Táto funkcia je efektívnym prijímačom správ pre správy odoslané z lokality hostiteľa. Volanie je asynchrónne.
Parametre
Registrované spätné volanie sa uskutoční vtedy, keď SDK prijme správu konkrétneho typu. Ak spätné volanie vráti hodnotu, táto hodnota sa potom vráti späť na stránku. Ak do tejto funkcie nie je odovzdané žiadne spätné volanie, akýkoľvek registrovaný prijímač pre daný konkrétny typ správy sa odstráni.
Toto sú spätné volania JavaScriptu, takže funkcia by mala použiť JavaScript Closure alebo je potrebné vytvoriť vhodné viazanie funkcie, aby mala prístup k príslušnému kontextu.
Názov | Typ | Popis |
---|---|---|
|
reťazec |
Typ správy:
|
|
funkcia |
Funkcia pri prijatí správy z lokality hostiteľa. |
Typy správ
Typ správy | Popis |
---|---|
SETTINGS_UPDATED | Prihlásenie na odber tejto správy, aby sa zobrazovali upozornenia na zmenu ľubovoľnej hodnoty na paneli Nastavenia. Komponent zvyčajne odpovedá aktualizáciou formátu výstupu v používateľskom rozhraní. |
TRIGGER_ACTIONS | Publikovaním tejto správy sa vyvolá spúšťač a odovzdá payload. |
EXECUTE_ACTION | Prihlásenie na odber tejto správy na spracovávanie vlastných akcií. Prijímač zvyčajne spracuje túto správu vykonaním danej akcie. |
GET_ACTIONS | Prihlásenie na odber tejto správy na deklarovanie poľa akcií, ktoré môže komponent vykonať. Vráti pole akcií. |
GET_TRIGGERS | Prihlásenie na odber tejto správy na deklarovanie poľa spúšťačov, ktoré môže komponent vyvolať. Vráti pole spúšťačov. |
COPY_CUSTOM_DATA | Prihlásenie na odber tejto správy na spracovanie kopírovania vlastných dát nastavení do schránky. Vráti objekt predstavujúci dáta, ktoré sa majú vložiť do schránky. |
PASTE_CUSTOM_DATA | Prihlásenie na odber tejto správy na spracovanie prilepenia vlastných dát nastavení zo schránky. |
Použitie
Niektoré prijímače očakávajú odovzdanie dát a iné očakávajú vrátenie dát.
Príklad 1:
Zaregistrujte prijímač správ pre typ správy EXECUTE_ACTION
:
SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.EXECUTE_ACTION, self.executeAction,self);
Zaregistrovaná funkcia callback
by mala prijať argument, ako je zobrazené tu:
// 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 }
Príklad 2:
Pre prijímač správ COPY_CUSTOM_DATA
sa zvyčajne implementuje kód ako tento:
// listen for COPY_CUSTOM_DATA request SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.COPY_CUSTOM_DATA,
Metóda copyCustomDataListener()
by mala vrátiť objekt predstavujúci dáta, ktoré sa majú skopírovať do schránky, napríklad:
// Handle Copy Style (save customSettingsData to the clipboard) self.copyCustomDataListener = function() { return { prop1: this.prop1(), prop2: this.prop2() }; };
Príklad 3:
Požiadavka PASTE_CUSTOM_DATA prijme dáta, ale nemusí vrátiť žiadnu hodnotu:
// listen for PASTE_CUSTOM_DATA request SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.PASTE_CUSTOM_DATA, pasteCustomDataListener);
A takisto:
// Handle Paste Style (apply customSettingsData from the clipboard) self.pasteCustomDataListener = function(data) { ... };