我想我不完全理解的方式require.js作品。下面是一个简单的模块,我创建:处理require.js
requirejs.config({
paths: {
'underscore' : 'libs/underscore-min',
'backbone' : 'libs/backbone-min'
}
});
define([
"underscore",
"backbone"
], function(_, Backbone) {
console.log(_);
console.log(Backbone);
var MyCollection = Backbone.Collection.extend({
initialize: function() {
this.on("all", function(event) {
console.log(event);
});
}
});
return MyCollection;
});
我从我的html加载:
<script data-main="js/mycollection.js" src="js/libs/require.min.js"></script>
的问题是间歇工作。有时Backbone对象在我需要的时候出现在函数中,有时它不会(并且给我提供了http://requirejs.org/docs/errors.html#notloaded错误)。如果我只是在浏览器中重新加载,我会得到50/50的改变。
我必须在这里错过一些非常基本的东西,报告的错误对我没有任何意义,我认为require.js机制的整个想法是我的函数只有在加载所有依赖时才被调用。