1

我能够使用 Backbone 的 history.navigate 默默地更改我的网址。喜欢从/itmes/itmes?price=5或其他

但是当我想把它改回来时(比如我清除了一些过滤器),从/items?price=5to /items,它就不起作用了。

示例代码:

# From /items to /items?price=5&category=business, works
Backbone.history.navigate("/items?price=5&category=business", false)
# From /items?price=5&category=business to /item, doesn't work as I've expected
Backbone.history.navigate("/items", false) # this one doesn't

有任何想法吗?如果 Backbone 的历史不支持此功能,有人可以告诉我一个解决方案吗?非常感激。

更多信息:
我发现了另一个奇怪的事情。假设我们在/items?price=5,如果我Backbone.history.navigate("/items", false)直接打电话。什么都没发生。

但是,如果我执行一个Backbone.history.navigate("/items?price=5", false),然后调用Backbone.history.navigate("/items", false),它会完成工作并/items正确执行。

这种方式的问题是它弄乱了历史,在正常历史之间会有一个附加节点。

4

0 回答 0