Concaténation des modules rnb-js

Evolution de l'implémentation de la « syntaxe module » dans la librairie javascript rnb-js.

// rnb.define([id,][dependencies,] builder)
rnb.define(function () {
    var Foo = function () {};
    Foo.prototype.someMethod = function () {
        // do something
    };
    // exports
    return Foo;
});
Création d'un module dans le fichier my/Foo.js
rnb.require(['my/Foo'], function (Foo) {
    var foo = new Foo();
});
Utilisation de l'objet Foo.

L'appel au module my/Foo dans le rnb.require entraînait le chargement du fichier my/Foo.js. Cependant, quand on utilise un nombre non négligeable de modules, il est préférable de concaténer tous les modules dans un unique fichier (et minifié de préférence). Pour que la définition de module fonctionne, il faut dés lors préciser l'identifiant :

// rnb.define([id,][dependencies,] builder)
rnb.define('my/Foo', [], function () {
    var Foo = function () {};
    Foo.prototype.someMethod = function () {
        // do something
    };
    // exports
    return Foo;
});
Création d'un module dans le fichier my/Foo.js pouvant être concaténer.