I love the sugar API of RequireJS. It’s elegant, clean and nearly identical to CommonJS.
However, the examples often fail to demonstrate how to use it from a main.js
file which does a require
call, rather than a define
. Doing something like this is quite useful, particularly when your config object is not a require call in itself:
(function(config, require, define){ 'use strict'; // config in require.config(config); // main logic, wrapped in a define but working as a require define(function(require){ var App = require('apps/foo/controllers/main'), instance = new App(); }); }.call(this, { baseUrl: 'js', paths: { apps: '../bower_components/', react: '../bower_components/react/react' } }, require, define); // passes local refs to closure, sets scope to global object with strict mode on.