For modules I don't return an object I have been using require instead of define. For example say I have the following jQuery plugin (jquery.my-plugin.js):
require(['jquery'], function($) {
$.fn.myPlugin = function(options) {
...
};
});
Now if I say the following in another module:
require(['jquery', 'jquery.my-plugin'], function($) {
$('#element').myPlugin();
});
I've found this doesn't work because myPlugin has not been registered. However if I change the require to a define within my jquery.my-plugin module then it works fine.
I'd appreciate it if someone could clear up why I have to do this. I like to understand something fully before I go ahead and use it. Thanks
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…