我无法运行下面的代码,因为 路由器未定义 在我看来。然而我很难理解我实际定义的位置 var router = new MyRouter(); 我的观点,控制器应用程序启动等?

我在用着 木偶 我的路由器似乎自动匹配我的控制器。

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 选项,根据解释的原因 这里 (路由章节)免费示例中的我的 关于木偶的书.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top