我有以下称为路由器(router.js)的主干模块
define(["app/facilities/messenger"], function (messenger)
{
return Backbone.Router.extend({
routes: {
"*hash": "onHashChange"
},
onHashChange: function (hash) {
messenger.publish("navigate", hash);
console.log("Publish navigate");
},
start: function () {
Backbone.history.start();
}
});
});
然后我运行另一个名为 application (application.js) 的模块,如下所示:
define(["app/facilities/contentManager","app/facilities/router"], function (contentManager, router)
{
return
{
run: function () {
contentManager.start();
router = router || new router();
router.start();
}
}
});
我收到以下错误:
未捕获的 TypeError: Object function (){ return parent.apply(this, arguments); } 没有方法“开始”(应用程序第 6 行)
任何想法为什么我router
没有start()
功能?我很清楚应该这样做。