我无法运行下面的代码,因为在我看来路由器未定义。然而,我很难理解我实际上在哪里定义了 var router = new MyRouter();
我的 View 、 Controller 应用程序启动等?
我正在使用marionette,我的路由器似乎会自动匹配我的 Controller 。
success: function (page) {
id = page.get('id')
router.navigate('page/' + id, {trigger: true});
}
最佳答案
如果您没有声明 router
属性,则您没有可用的属性(它不会自动创建或任何其他内容),因此会出现 undefined
值.
要导航到给定页面,您还可以使用 Backbone.history.navigate
(例如,参见 https://github.com/davidsulc/marionette-gentle-introduction/blob/master/assets/js/app.js )。
此外,您可能需要根据解释的原因重新考虑使用 trigger: true
选项 here (路由篇)免费样例发到我的book on Marionette .
关于javascript - Marionette 路由器未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20036929/