Tässä vaiheessa näytetään, kuinka näkemäsi herätin käynnistetään.
Komponentti voi käynnistää herättimiä milloin tahansa. Yleensä herättimen käynnistää käyttäjän toimenpide, kuten painikkeen napsautus tai taulukon rivin valinta. Komponentti voi kuitenkin käynnistää herättimen minkä tahansa ehdon perusteella, kuten REST API -kutsun aiheuttamien tietojen muutosten vuoksi.
Tässä esimerkissä kuvan napsauttaminen käynnistää herättimen, joka välittää whoAreYou
-ominaisuuden arvon.
Tarkista render.js
-tiedosto ja tarkastele SampleComponentViewModel
-objektia.
Herättimen käynnistys:
Tarkista funktio SampleComponentViewModel
-objektissa, joka kutsuu sivustojen SDK:n herättimen käynnistystä varten.
self.raiseTrigger = function (triggerName) { SitesSDK.publish(SitesSDK.MESSAGE_TYPES.TRIGGER_ACTIONS, { 'triggerName': triggerName, 'triggerPayload': { 'payloadData': 'some data here' } }); };
Nyt tarvitset käyttöliittymässä jotain, jolla kutsutaan herättimen käynnistävä funktio. Tarkista render.js
-tiedosto ja päivitä sampleComponentTemplate
-objekti siten, että sillä on tämä merkintä:
'<div data-bind="attr: {style: imageStyle, \'data-layout\': alignImage()}, click: imageClicked">' +
SampleComponentViewModel
-objektissa näkyy JavaScript-funktio, joka kutsutaan kuvaa napsautettaessa. Tämä funktio kutsuu sivustojen SDK:ta ja pyytää sitä käynnistämään kaikki herättimelle "imageClicked"
määritetyt toiminnot. Kyseessä on arvo, joka välitettiin click
-sidoksesta vaiheessa 2. Se läpäisee myös kohteen triggerPayload
, jossa on yksittäinen kenttä payloadData
. Lisäksi se läpäisee staattisen arvon 'some data here'
. Arvot imageClicked
ja whoAreYou
vastaavat appinfo.json
-tiedoston arvoja. Siellä herätin rekisteröitiin (edellisessä vaiheessa).
Mallikoodissa herätin käynnistetäänclick
-sidoksen tietosidoksella ja välitetään herättimen nimellä imageClicked
. <scs-image>
-komponentista on tällä hetkellä kolme muodostusta, jotka perustuvat käyttäjän valitsemaan asetteluun. Varmista, että herätin käynnistetään kaikille asetteluilla, muokkaamalla render.js
-tiedostoa siten, että seuraavat muutokset toteutetaan.
Käynnistä herättimet eri asetteluista. Etsi tämän koodin kaksi merkintää:
'<div data-bind="attr: {style: imageStyle, \'data-layout\': alignImage()}">' +
Muuta koodi tähän muotoon:
'<div data-bind="attr: {style: imageStyle, \'data-layout\': alignImage()}, click: imageClicked">' +
Määritä herättimille välitettävät käsitellyt tiedot. Vaihda tämä koodi:
self.raiseTrigger = function (triggerName) { SitesSDK.publish(SitesSDK.MESSAGE_TYPES.TRIGGER_ACTIONS, { 'triggerName': triggerName, 'triggerPayload': { 'payloadData': 'some data here' } }); };
Käytä sen sijaan tätä koodia:
self.raiseTrigger = function (triggerName) { SitesSDK.publish(SitesSDK.MESSAGE_TYPES.TRIGGER_ACTIONS, { 'triggerName': triggerName, 'triggerPayload': { 'payloadData': self.imageBannerText() // pass banner text as payload } }); };
Synkronoi tai lataa render.js
-tiedosto Oracle Content Management -instanssin palvelimeen.
Nyt olet tarkistanut vaadittavan koodin ja voit kytkeä herättimen siten, että mukautettu komponenttisi käynnistää sen, kun painiketta napsautetaan.
Tarkista vaiheen 6 tulokset
Nyt sinun pitäisi pystyä rekisteröimään toiminto, joka suoritetaan herättimen perusteella. Toiminto suoritetaan, kun herätin käynnistetään:
Päivitä sivustossasi oleva sivu, jotta sivustonluontiohjelma voi poimia komponenttiin tehdyt muutokset.
Aseta sivu muokkaustilaan.
Vedä ja pudota komponentti sivulle.
Avaa komponentin Asetukset-paneeli.
Valitse Linkki-välilehti Asetukset-paneelin yläosassa.
Valitse linkkityypiksi Herätintoiminnot.
Napsauta imageClicked-herätintä, joka rekisteröitiin.
Vedä valintaikkunassa Näytä ilmoitus -toiminto Sivun toiminnot -osasta.
Valitse Sanoma-kentässä payloadData-arvo. Kyseessä on käsitelty tieto, jona syötit herättimen rekisteröinnin yhteydessä.
Sulje Asetukset-paneeli ja vaihda sivustonluontiohjelma esikatselutilaan.
Napsauta komponentissa olevaa kuvaa.
Näkyviin tulee ilmoitus no message defined
, koska et ole määrittänyt imageBannerText
-arvoa.
Aseta sivu muokkaustilaan ja avaa komponentin Asetukset-paneeli uudelleen.
Valitse Mukautetut asetukset ja syötä Workplace.
Sulje Asetukset-paneeli ja vaihda sivu esikatselutilaan.
Napsauta komponentissa olevaa kuvaa.
Nyt sivulla pitäisi näkyä päivitetyt käsitellyt Workplace
-tiedot, jotka kutsutaan click
-sidoksessa tekemästäsi muutoksesta.
Voit suorittaa rajoittamattoman määrän toimia, kun herätin käynnistyy.
Huomautus::
Toimintoa ei suoriteta ennalta määritetyssä järjestyksessä. Toimintoja kutsutaan siinä järjestyksessä, jossa ne on lueteltu, mutta toiminnon valmistumista ei odoteta ennen seuraavan toiminnon kutsumista. Jos toiminto suorittaa asynkronisen kutsun, se ei ehkä valmistu ennen seuraavan toiminnon suoritusta.Jatka kohtaan Vaihe 7: toimintojen rekisteröinti.