Backbone.js在导航时触发路由,pushState=true?

Backbone.js在导航时触发路由,pushState=true?,backbone.js,pushstate,Backbone.js,Pushstate,我正在使用主干网0.92,在FF中体验到与Chrome不同的路由器行为 在Firefox中,导航到此url不会触发defaultRoute: Backbone.history.start({pushState: true}); myRouter.navigate("?chapter=1") //Router routes: { '*path': 'defaultRoute', } 而在Chrome中,导航确实会触发整个页面的刷新。 原因可能是什么?将其更改为myRou

我正在使用主干网0.92,在FF中体验到与Chrome不同的路由器行为

在Firefox中,导航到此url不会触发defaultRoute:

Backbone.history.start({pushState: true});

myRouter.navigate("?chapter=1")

//Router
routes: {
    '*path':        'defaultRoute',
}
而在Chrome中,导航确实会触发整个页面的刷新。
原因可能是什么?

将其更改为myRouter.navigate?chapter=1,{trigger:true};解决你的问题

然而,值得注意的是,这实际上是一个chrome问题,而不是firefox问题。出于某种原因,Chrome似乎预加载了路由器url,这意味着路由器方法可以在没有指定您希望它执行的情况下执行

无论哪种方式,添加{trigger:true}都是执行导航的预期方式,将解决您的问题。

myRouter.navigate?chapter=1,{trigger:true};应该有用。你试过了吗?