Note:

This site is no longer used and is in read-only mode. Instead please go to our new Moodle Developer Resource site.

AMD pubsub: Difference between revisions

From MoodleDocs
m Text replacement - "</code>" to "</syntaxhighlight>"
m Text replacement - "<code (.*)>" to "<syntaxhighlight lang="$1">"
Line 8: Line 8:


= Example =
= Example =
<code javascript>
<syntaxhighlight lang="javascript">
// Module A.
// Module A.
require(['core/pubsub'], function(PubSub) {
require(['core/pubsub'], function(PubSub) {

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);
    });
});