-
Notifications
You must be signed in to change notification settings - Fork 3
Modules
All code is structured using the "Model View Presenter" concept, wrapped into modules that follow the "Revealing Module Pattern".
Here is an example for the basic structure of a module, as used a lot in the code base.
`const SomeModule = ( function() {
/**
- Module to do something
*/
'use strict';
const someVariable = 'whatever';
/* ================== private methods ================= */
function doSomethingOnAppLaunch() { // do something here, for example also using someVariable }
function presenter( which, options ) { // get some data and/or component according to the 'which' parameter, mash it into usable stuff considering the options parameter, and send it to the view
return {
someStuff: someStuff,
};
}
function view( stuff ) { // do something with the stuff, like updating the DOM }
/* ============ public methods and exports ============ */
function launch() { doSomethingOnAppLaunch(); }
function draw( options ) { view( presenter( which, options ) ); }
return { launch: launch, draw: draw, };
} )();`