Durandaljs 路由器重新加载页面,而不考虑 Firefox 中的“trigger: false”参数

Durandaljs router reloads the page regardless of "trigger: false" parameter In Firefox

本文关键字:中的 Firefox 不考虑 trigger 参数 false 新加载 路由器 加载 Durandaljs      更新时间:2023-09-26

我需要修改网址哈希,但不能重新加载页面(不触发模块激活),所以我这样做:

router.navigate(route, {trigger: false});

router.navigate(route, false); 

两者都适用于除火狐浏览器以外的所有浏览器。我的火狐版本是44.0.2。

有没有人遇到过这种行为?有解决方法吗?

编辑

由于我没有通过durandaljs提供解决方案,因此我只是使用了

history.pushState(null, null, "#"+route);
我也

遇到了这个问题,结果证明是因为我没有正确编码我的查询字符串。在编码之前,Firefox 导致视图模型重新激活(即使使用触发器:false),其中 Chrome 和 IE 可以很好地处理未编码的查询字符串(并且不会导致重新激活)。