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>
問題は、断続的に動作することです。バックボーンオブジェクトが必要なときに関数に含まれることもあれば、含まれないこともあります(http://requirejs.org/docs/errors.html#notloadedエラーが発生します)。ブラウザでリロードを押すと、50/50の変更が機能します。
ここでは本当に基本的なものが欠けているに違いありません。報告されたエラーは私には意味がありません。require.jsメカニズムの全体的な考え方は、すべての依存関係が読み込まれたときにのみ関数が呼び出されるということだと思いました。