Deze functie is in feite een berichtenlistener voor berichten die worden verzonden vanaf de hostsite. De aanroep is asynchroon.
Parameters
De geregistreerde callback wordt aangeroepen wanneer een bericht van een specifiek type wordt ontvangen door de SDK. Als met een callback een waarde wordt geretourneerd, wordt die waarde weer geretourneerd naar de pagina. Als er geen callback aan deze functie wordt doorgegeven, wordt een geregistreerde listener voor dat specifieke berichttype verwijderd.
Dit zijn JavaScript-callbacks, dus voor de functie moet JavaScript Closure worden gebruikt of moet hiermee de functie passend worden gebonden om ervoor te zorgen dat deze toegang heeft tot de juiste context.
Naam | Type | Beschrijving |
---|---|---|
|
string |
Type bericht:
|
|
functie |
De functie wanneer een bericht wordt ontvangen van een hostsite |
Berichttypen
Berichttype | Beschrijving |
---|---|
SETTINGS_UPDATED | Meld u aan voor dit bericht om een melding te ontvangen wanneer een waarde wordt gewijzigd in het paneel 'Instellingen'. Doorgaans reageert de component door de weergave in de gebruikersinterface bij te werken. |
TRIGGER_ACTIONS | Door de publicatie van dit bericht wordt een trigger gegenereerd en wordt payload doorgegeven. |
EXECUTE_ACTION | Meld u aan voor dit bericht om aangepaste acties af te handelen. Dit bericht wordt doorgaans door de listener afgehandeld door de opgegeven actie uit te voeren. |
GET_ACTIONS | Meld u aan voor dit bericht om een array met acties te declareren die door de component kunnen worden uitgevoerd. Hiermee wordt een array met acties geretourneerd. |
GET_TRIGGERS | Meld u aan voor dit bericht om een array met triggers te declareren die door de component kunnen worden gegenereerd. Hiermee wordt een array met triggers geretourneerd. |
COPY_CUSTOM_DATA | Meld u aan voor dit bericht om het kopiëren van aangepaste instellingsgegevens naar het klembord af te handelen. Hiermee wordt een object geretourneerd dat gegevens aangeeft die op het klembord moeten worden geplaatst. |
PASTE_CUSTOM_DATA | Meld u aan voor dit bericht om het plakken van aangepaste instellingsgegevens vanaf het klembord af te handelen. |
Gebruik
Door sommige listeners wordt verwacht dat gegevens worden doorgegeven en van sommige wordt verwacht dat ze gegevens retourneren.
Voorbeeld 1:
Registreer een berichtenlistener voor berichttype EXECUTE_ACTION
:
SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.EXECUTE_ACTION, self.executeAction,self);
Door de geregistreerde callback
-functie moet een argument worden geaccepteerd zoals hier wordt getoond:
// 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 }
Voorbeeld 2:
De listener COPY_CUSTOM_DATA
wordt doorgaans geïmplementeerd met code zoals deze:
// listen for COPY_CUSTOM_DATA request SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.COPY_CUSTOM_DATA,
Met de methode copyCustomDataListener()
wordt een object geretourneerd dat de gegevens aangeeft die naar het klembord moeten worden gekopieerd, bijvoorbeeld:
// Handle Copy Style (save customSettingsData to the clipboard) self.copyCustomDataListener = function() { return { prop1: this.prop1(), prop2: this.prop2() }; };
Voorbeeld 3:
Met de aanvraag PASTE_CUSTOM_DATA worden gegevens geaccepteerd, maar hoeft er niets te worden geretourneerd:
// listen for PASTE_CUSTOM_DATA request SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.PASTE_CUSTOM_DATA, pasteCustomDataListener);
Samen met:
// Handle Paste Style (apply customSettingsData from the clipboard) self.pasteCustomDataListener = function(data) { ... };