AMD pubsub: Difference between revisions
From MoodleDocs
Ryan Wyllie (talk | contribs) No edit summary |
David Mudrak (talk | contribs) m (Text replacement - "<code (.*)>" to "<syntaxhighlight lang="$1">") |
||
(One intermediate revision by the same user not shown) | |||
Line 8: | Line 8: | ||
= Example = | = Example = | ||
< | <syntaxhighlight lang="javascript"> | ||
// Module A. | // Module A. | ||
require(['core/pubsub'], function(PubSub) { | require(['core/pubsub'], function(PubSub) { | ||
Line 20: | Line 20: | ||
}); | }); | ||
}); | }); | ||
</ | </syntaxhighlight> |
Latest revision as of 08:24, 15 July 2021
Moodle 3.6
What is this?
A simple module to do event subscription and publishing in JavaScript. It was added to avoid the need to use jQuery and the DOM.
Why would I use it?
Allows modules to communicate with one another indirectly without the need to include jQuery or touch the DOM.
Example
// Module A.
require(['core/pubsub'], function(PubSub) {
PubSub.publish('example-event', someData);
});
// Module B.
require(['core/pubsub'], function(PubSub) {
PubSub.subscribe('example-event', function(someData) {
console.log('Received', someData);
});
});