Αυτή η συνάρτηση είναι τελικά μια λειτουργία ακρόασης μηνυμάτων για μηνύματα που αποστέλλονται από την τοποθεσία του κεντρικού υπολογιστή. Η κλήση είναι ασύγχρονη.
Παράμετροι
Η εγγεγραμμένη επανάκληση καλείται όταν ένα μήνυμα συγκεκριμένου τύπου λαμβάνεται από το SDK. Αν η επανάκληση επιστρέψει μια τιμή, αυτή η τιμή επιστρέφεται στη σελίδα. Αν δεν μεταβιβαστεί καμία επανάκληση σε αυτήν τη συνάρτηση, τότε οποιαδήποτε εγγεγραμμένη λειτουργία ακρόασης για τον συγκεκριμένο τύπο μηνύματος διαγράφεται.
Αυτές είναι επανακλήσεις JavaScript, οπότε η συνάρτηση θα πρέπει να χρησιμοποιήσει το JavaScript Closure ή να δεσμεύσει κατάλληλα τη συνάρτηση για να εξασφαλίσει ότι έχει πρόσβαση στο κατάλληλο περιβάλλον.
| Όνομα | Τύπος | Περιγραφή |
|---|---|---|
|
|
συμβολοσειρά |
Τύπος μηνύματος:
|
|
|
συνάρτηση |
Η συνάρτηση όταν ληφθεί ένα μήνυμα από μια τοποθεσία κεντρικού υπολογιστή. |
Τύποι μηνυμάτων
| Τύπος μηνύματος | Περιγραφή |
|---|---|
| SETTINGS_UPDATED | Εγγραφείτε σε αυτό το μήνυμα για να ειδοποιηθείτε όταν αλλάξει οποιαδήποτε τιμή στον Πίνακα ρυθμίσεων. Συνήθως, το συστατικό στοιχείο θα απαντήσει ενημερώνοντας την απόδοσή του στο περιβάλλον χρήστη.. |
| TRIGGER_ACTIONS | Η δημοσίευση αυτού του μηνύματος ενεργοποιεί ένα έναυσμα και μεταβιβάζει ωφέλιμο φορτίο. |
| EXECUTE_ACTION | Εγγραφείτε σε αυτό το μήνυμα για να χειρίζεστε προσαρμοσμένες ενέργειες. Η λειτουργία ακρόασης συνήθως χειρίζεται αυτό το μήνυμα εκτελώντας τη δεδομένη ενέργεια. |
| GET_ACTIONS | Εγγραφείτε σε αυτό το μήνυμα για να δηλώσετε έναν πίνακα ενεργειών που μπορεί να εκτελέσει το συστατικό στοιχείο. Επιστρέφει τον πίνακα ενεργειών. |
| GET_TRIGGERS | Εγγραφείτε σε αυτό το μήνυμα για να δηλώσετε έναν πίνακα εναυσμάτων που μπορεί να ενεργοποιήσει το συστατικό στοιχείο. Επιστρέφει τον πίνακα εναυσμάτων. |
| COPY_CUSTOM_DATA | Εγγραφείτε σε αυτό το μήνυμα για να χειριστείτε την αντιγραφή των Προσαρμοσμένων δεδομένων ρυθμίσεων στο πρόχειρο. Επιστρέφει ένα αντικείμενο που αντιπροσωπεύει τα δεδομένα που θα τοποθετηθούν στο πρόχειρο. |
| PASTE_CUSTOM_DATA | Εγγραφείτε σε αυτό το μήνυμα για να χειριστείτε την επικόλληση των Προσαρμοσμένων δεδομένων ρυθμίσεων από το πρόχειρο. |
Χρήση
Ορισμένες λειτουργίες ακρόασης αναμένουν δεδομένα να μεταβιβαστούν και ορισμένες αναμένεται να επιστρέψουν δεδομένα.
Παράδειγμα 1:
Εγγράψτε μια λειτουργία ακρόασης μηνυμάτων για τον τύπο μηνύματος EXECUTE_ACTION:
SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.EXECUTE_ACTION, self.executeAction,self);
Η εγγεγραμμένη συνάρτηση callback πρέπει να δέχεται ένα όρισμα όπως απεικονίζεται εδώ:
// 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
}
Παράδειγμα 2:
Η λειτουργία ακρόασης COPY_CUSTOM_DATA συνήθως υλοποιείται με κώδικα όπως αυτός:
// listen for COPY_CUSTOM_DATA request
SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.COPY_CUSTOM_DATA,
Η μέθοδος copyCustomDataListener() θα επιστρέψει ένα αντικείμενο που αντιπροσωπεύει τα δεδομένα που θα αντιγραφούν στο πρόχειρο, για παράδειγμα:
// Handle Copy Style (save customSettingsData to the clipboard)
self.copyCustomDataListener = function() {
return {
prop1: this.prop1(),
prop2: this.prop2()
};
};
Παράδειγμα 3:
Το αίτημα PASTE_CUSTOM_DATA δέχεται δεδομένα, αλλά δεν πρέπει να επιστρέψει τίποτα:
// listen for PASTE_CUSTOM_DATA request SitesSDK.subscribe(SitesSDK.MESSAGE_TYPES.PASTE_CUSTOM_DATA, pasteCustomDataListener);
Μαζί με:
// Handle Paste Style (apply customSettingsData from the clipboard)
self.pasteCustomDataListener = function(data) {
...
};