Events¶
The event-hook manages events and creates callable functions to throw or catch aura events. It encapsulate the ‘ createEventName’ function to build event-names with the this.events.namespace, this.options.instanceName and postFix of the given events.
define(['services/husky/util'], function (util) {
'use strict';
/**
* Namespace for events.
*
* @type {string}
*/
var eventNamespace = 'smart-content.categories.';
return {
defaults: {
options: {instanceName: 'example'}
},
events: {
names: {
initialized: {postFix: 'initialized'},
getData: {
postFix: 'get-data',
type: 'on'
}
},
namespace: eventNamespace
},
initialize: function () {
this.loadData().then(function (data) {
this.data = data;
// emit event
this.events.initialized(data);
});
// getter for data
this.events.getData(function (callback) {
callback(this.data);
}.bind(this));
},
loadData: function () {
// ...
return util.Deferred();
}
};
});
Note
The event-names will be build with this schema: <namespace>.[<instancename>.]<postFix>.
Types¶
The events-hook can handle different types of events.
|
Uses this.sandbox.emit to emit an aura event. |
|
Uses this.sandbox.on to add a event-listener to a aura event. |
|
Uses this.sandbox.once to add a one-time event-listener to a aura event. |