木偶路由器未定义

时间:2013-11-17 22:18:41

标签: javascript jquery backbone.js marionette

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

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

success: function (page) {
   id = page.get('id')
   router.navigate('page/' + id, {trigger: true});
}

1 个答案:

答案 0 :(得分:2)

如果您没有声明router属性,则没有可用的属性(它不会自动创建或任何内容),因此undefined值。

要导航到指定页面,您还可以使用Backbone.history.navigate(例如参见https://github.com/davidsulc/marionette-gentle-introduction/blob/master/assets/js/app.js)。

此外,您可能需要重新考虑使用trigger: true选项,根据免费样本中here(路由章节)解释的原因,我的book on Marionette