0

我有一个基于 ember.js 路由器的应用程序,有一个有趣的怪癖。由于路由器文档相当稀疏,我不确定这是否是我在其他地方的某些代码的功能错误或意外后果。

当我在浏览器中重新加载包含应用程序的页面时,应用程序会跳转到我上次所在的路径。我将路由序列化为哈希。所以一个例子是我在app.html#/users/1/details,我删除哈希并添加一个随机查询变量app.html?reload=randomnumber并加载页面。一旦 ember 加载,它就会添加#/users/1/details回该地址。

这是 ember 的功能/后果,还是我写的一些垃圾。到目前为止,我还没有发现我写的任何可能导致这种情况的东西。

如果它是 ember 功能,有没有办法禁用它?

4

1 回答 1

0

你到底在说什么“重新加载”?

当使用散列序列化路由时,Ember 无法在浏览器中保留任何状态。它与 Ember 无关:重新加载页面时,整个状态都丢失了,并根据请求的 url 返回的内容初始化进行重置。

然而,当散列存在时,Ember 会使用它来重置路由器的状态。

所以我怀疑你仍在重新加载 URL .../app.html#/users/1/details

您是否在开发人员工具(或同等工具)中查看了您的网络历史记录?

第一项应该是 GET 请求,它会指示有效请求的 URL 和哈希(如果有)。

于 2012-10-10T14:17:42.880 回答