Say we have module /app/scripts/methodsModule.js that returns a few methods:
define({
someMethod: function() {
// do stuff
},
anotherMethod: function() {
// do some more stuff
}
});
In our data-main file /app/scripts/main.js we have:
require(['methodsModule'], function(methods) {
methods.someMethod() // call someMethod
methods.anotherMethod() // call anotherMethod
})
Once requireJS loads up our data-main, we can access any modules that have already been loaded by requireJS from the javascript console command line like so:
>> methods = require('methodsModule'); // requireJS has module methodsModule stored
>> methods.someMethod() // call someMethod
>> methods.anotherMethod() // call anotherMethod
If a module hasn't been loaded by a call to require() or define(), we have to pass our own callback for the require function to call after the module has been loaded:
>> myCB = function(methods) { methods.someMethod() }
>> require(['methodsModule'], myCB)
Otherwise, requireJS throws an error saying that the module has not yet been loaded..
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…