0

在我看来,我呈现集合并且我有排序按钮。单击排序按钮时,将使用一些自定义查询参数(如&sort=id+desc)获取集合。它有效,但我还想将 url 查询字符串更改为此查询参数(&sort=id+desc)。问题是它可以工作,但它会重新渲染整个视图,因为路由器只是重定向到不同的操作(实际上是相同的操作但具有不同的查询参数)。

如何在不重新加载视图的情况下更改 url 查询参数并将其添加到历史记录中?

我在我的应用程序中使用 pushState

4

1 回答 1

0

您应该为此使用骨干路由器。

当应用程序启动时,您需要运行:

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

要更改 URL,只需使用您的路由器:

router.navigate("something?key=value");

如果您没有路由器,您只需创建一个:

var router = new Backbone.Router();
于 2014-04-26T19:57:52.183 回答