RESTHub 2.0 バックボーン スタックを使用しています
以下は私のroute.jsです
define(function (require) {
'use strict';
var $ = require('jquery');
var Backbone = require('backbone');
var HomeView = require('../views/home');
var _pageView;
var AppRouter = Backbone.Router.extend({
initialize: function() {
console.log("Router initialize");
Backbone.history.start({ pushState: false, root: "/" });
_pageView = new HomeView();
},
routes: {
'': 'main',
'test': 'test'
},
main: function() {
console.log("Main route activated");
require(['views/home'], function(HomeView) {
_pageView.render(HomeView);
});
},
test: function() {
console.log("Test route activated");
alert("test");
}
});
return AppRouter;
});
ブラウザのコンソールに次のエラーが表示されます
Error: Module name "../views/home" has not been loaded yet for context: _
http://requirejs.org/docs/errors.html#notloaded
なぜこのエラーが発生するのですか?
上記のファクトリ関数を呼び出す前に、requirejs がすべての依存関係を確実にロードして実行する必要があるため、これは失敗します。define() に依存配列が指定されている場合、requirejs はすべての依存関係がその配列にリストされていると想定し、他の依存関係についてファクトリ関数をスキャンしません。したがって、依存配列を渡さないでください。
しかし、まだ機能していません!