SitesSDK.subscribe(messageType, callback)

Tämä funktio on käytännössä pääsivustosta lähetettyjen sanomien kuuntelija. Kutsu on asynkroninen.

Parametrit

Rekisteröityä vastakutsua kutsutaan, kun SDK vastaanottaa tietyntyyppisen sanoman. Jos vastakutsu palauttaa arvon, kyseinen arvo palautetaan sivulle. Jos funktioon ei välitetä vastakutsua, kyseiselle sanomatyypille rekisteröidyt kuuntelijat poistetaan.

Vastakutsut ovat JavaScript -vastakutsuja, joten varmista, että funktio voi käyttää asianmukaista kontekstia. Tämän voi tehdä käyttämällä JavaScript-sulkeumaa tai sitomalla funktion asianmukaisesti.

Nimi Tyyppi Kuvaus

messageType

merkkijono

Sanoman tyyppi:

  • SETTINGS_UPDATED

  • TRIGGER_ACTIONS

  • EXECUTE_ACTION

  • GET_ACTIONS

  • GET_TRIGGERS

  • COPY_CUSTOM_DATA

  • PASTE_CUSTOM_DATA

callback

funktio

Suoritettava funktio, kun pääsivustosta vastaanotetaan sanoma.

Sanomatyypit

Sanoman tyyppi Kuvaus
SETTINGS_UPDATED Jos tilaat tämän sanoman, saat ilmoituksen, kun arvoa muutetaan asetuspaneelissa. Tavallisesti komponentti vastaa päivittämällä muodostuksensa käyttöliittymässä.
TRIGGER_ACTIONS Tämän sanoman julkaisu käynnistää herättimen ja välittää tiedot.
EXECUTE_ACTION Voit käsitellä räätälöidyt toimet tilaamalla tämän sanoman. Kuuntelija käsittelee yleensä tämän sanoman suorittamalla määritetyn toiminnon.
GET_ACTIONS Tilaamalla tämän sanoman voit esitellä taulukon toimista, jotka komponentti voi suorittaa. Palauttaa toimien taulukon.
GET_TRIGGERS Tilaamalla tämän sanoman voit esitellä taulukon herättimistä, jotka komponentti voi käynnistää. Palauttaa herättimien taulukon.
COPY_CUSTOM_DATA Tilaamalla tämän sanoman voit käsitellä räätälöityjen asetustietojen kopioinnin leikepöydälle. Palauttaa objektin, joka edustaa leikepöydälle lisättäviä tietoja.
PASTE_CUSTOM_DATA Tilaamalla tämän sanoman voit käsitellä räätälöityjen asetustietojen liittämisen leikepöydältä.

Käyttö

Jotkin kuuntelijat odottavat, että tietoja välitetään, ja toisten odotetaan palauttavan tietoja.

Esimerkki 1:

Rekisteröi sanomien kuuntelija sanomatyypille EXECUTE_ACTION:

SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.EXECUTE_ACTION, self.executeAction,self);

Rekisteröidyn callback-funktion tulisi hyväksyä argumentti seuraavalla tavalla:

// typical signature of a callback function registered with a message
// type
function (args) {
                var payload = args.detail.message.payload,
                                        action = args.detail.message.action,
                                        actionName =  action && action.actionName;

                // do something here with the payload data

        }

Esimerkki 2:

COPY_CUSTOM_DATA-kuuntelija toteutetaan yleensä seuraavanlaisella koodilla:

     // listen for COPY_CUSTOM_DATA request
     SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.COPY_CUSTOM_DATA, 

copyCustomDataListener()-menetelmä palauttaisi leikepöydälle kopioitavia tietoja edustavan objektin. Esimerkki:

     // Handle Copy Style (save customSettingsData to the clipboard)
     self.copyCustomDataListener = function() {
         return {
             prop1: this.prop1(),
             prop2: this.prop2()
         };
     };

Esimerkki 3:

PASTE_CUSTOM_DATA-pyyntö hyväksyy tietoja, mutta sen ei tarvitse palauttaa mitään:

// listen for PASTE_CUSTOM_DATA request
SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.PASTE_CUSTOM_DATA, pasteCustomDataListener);

Myös seuraava tarvitaan:

// Handle Paste Style (apply customSettingsData from the clipboard)
self.pasteCustomDataListener = function(data) {
     ...
};