我想在视图上启动一个骨干应用程序,它已经由Rails呈现。
这是我的路由器代码
class App.Routers.Dashboard extends Backbone.Router
routes:
'': 'index'
'locations/:id': 'showLocation'
index: ->
alert "Dashboard page"
initialize: ->
@route(/\/?/, 'index', @index);
然后在渲染视图中,我启动应用程序
$ ->
App.appRouter = new App.Routers.Dashboard()
Backbone.history.start
pushState: true
root: "/dashboard"
但是,如果我打开页面
http://localhost:3000/dashboard
路由器未进入“索引”状态。
我错过了什么吗?
答案 0 :(得分:0)
默认路由''
只会在URL位于根目录时匹配。
在您的示例中,只会使用http://localhost:3000/
的网址调用“索引状态”。
建议的方法是使用“splat”路由'*path': 'index'
。因为这条路线有效地说要匹配任何东西,所以你需要确保它是最后定义的路线。