Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

AMD pubsub

From MoodleDocs

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