Backbone.js和导航

Dra*_*kic 2 backbone.js backbone-routing

由于骨干网没有办法做大多数事情,我很多东西都很困惑.其中一个是浏览我的应用程序的正确方法.

我意识到BB路由器有一个'.navigate'方法,可以用来推送网址和触发路由.现在,由于我的应用程序有多个路由器,我不确定在一个或其他路由器上调用'.navigate'之间有什么区别.

这是我的路由器

new Etaxi.Routers.System()
new Etaxi.Routers.Header()
new Etaxi.Routers.Videos()
new Etaxi.Routers.News()
Run Code Online (Sandbox Code Playgroud)

现在我能做到

router = Etaxi.Routers.System()
// or i could do
router = Etaxi.Routers.Header()

router.navigate(url)
Run Code Online (Sandbox Code Playgroud)

我用于全球应用导航的路由器有什么区别吗?这对我来说似乎很奇怪.

Der*_*ley 10

您呼叫的路由器没有区别.事实上,当你有多个路由器时,我建议不要调用特定的路由器.或者,就此而言,根本不需要打电话给路由器.如果你看一下路由器navigate方法的源代码,你会发现它只是传递给了Backbone.history.navigate.所以直接调用它:

Backbone.history.navigate(url)

http://backbonejs.org/docs/backbone.html#section-114

我在几乎所有的应用程序中使用多个路由器,这就是我调用该navigate方法的方法.它运行良好,并避免混淆哪个路由器调用.