Cette fonction est en réalité un processus d'écoute des messages répartis à partir du site hôte. L'appel est asynchrone.
Paramètres
Le callback inscrit est appelé lorsque le kit SDK reçoit un message d'un type donné. Si le callback renvoie une valeur, cette dernière est renvoyée vers la page. Si aucun callback n'est transmis à cette fonction, tout processus d'écoute inscrit pour ce type de message spécifique est supprimé.
Il s'agit de callbacks JavaScript, la fonction doit donc utiliser une fermeture JavaScript ou lier correctement la fonction pour veiller à avoir accès au contexte approprié.
Nom | Type | Description |
---|---|---|
|
chaîne |
Type de message :
|
|
fonction |
Fonction lorsqu'un message est reçu à partir d'un site hôte. |
Types de message
Type de message | Description |
---|---|
SETTINGS_UPDATED | Abonnez-vous à ce message pour être averti lorsqu'une valeur est modifiée dans le panneau des paramètres. En règle générale, le composant répondra en mettant à jour son rendu dans l'interface utilisateur. |
TRIGGER_ACTIONS | La publication de ce message active un déclencheur et transmet des données traitées. |
EXECUTE_ACTION | Abonnez-vous à ce message pour gérer les actions personnalisées. En règle générale, le processus d'écoute gère ce message en effectuant l'action indiquée. |
GET_ACTIONS | Abonnez-vous à ce message pour déclarer un tableau d'actions que le composant peut exécuter. Renvoie un tableau d'actions. |
GET_TRIGGERS | Abonnez-vous à ce message pour déclarer un tableau de déclencheurs que le composant peut activer. Renvoie un tableau de déclencheurs. |
COPY_CUSTOM_DATA | Abonnez-vous à ce message pour gérer la copie des données de paramètres personnalisés vers le presse-papiers. Renvoie un objet représentant les données à ajouter au presse-papiers. |
PASTE_CUSTOM_DATA | Abonnez-vous à ce message pour gérer le collage des données de paramètres personnalisés à partir du presse-papiers. |
Syntaxe
Pour certains processus d'écoute, les données doivent être transmises, tandis que pour d'autres, les données sont renvoyées.
Exemple 1 :
Inscrivez un processus d'écoute de message pour le type de message EXECUTE_ACTION
:
SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.EXECUTE_ACTION, self.executeAction,self);
La fonction callback
inscrite doit accepter un argument comme indiqué ci-dessous :
// 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 }
Exemple 2 :
Le processus d'écoute COPY_CUSTOM_DATA
est généralement implémenté avec un code comme celui-ci :
// listen for COPY_CUSTOM_DATA request SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.COPY_CUSTOM_DATA,
La méthode copyCustomDataListener()
renvoie un objet représentant les données à copier dans le presse-papiers, par exemple :
// Handle Copy Style (save customSettingsData to the clipboard) self.copyCustomDataListener = function() { return { prop1: this.prop1(), prop2: this.prop2() }; };
Exemple 3 :
La demande PASTE_CUSTOM_DATA accepte des données, mais ne doit renvoyer aucune valeur :
// listen for PASTE_CUSTOM_DATA request SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.PASTE_CUSTOM_DATA, pasteCustomDataListener);
Avec :
// Handle Paste Style (apply customSettingsData from the clipboard) self.pasteCustomDataListener = function(data) { ... };