我有route
一个resolve
服务器端资源。该资源要求进行身份验证。所以我显示了一个可以取消的登录表单弹出窗口。取消时,路由/解析会正确获取rejected
并$routeChangeError
触发。
问题是,我现在在地址栏中有那个失败的位置/网址和一个不必要的历史条目。
如何在不重新加载的情况下将当前位置 url 替换为最后一个?以及如何在路由更改失败后删除当前的历史记录?
编辑:我使用 angular-http-auth。这是我的路由:
/home
> /item
(必须解决需要身份验证的资源,当未登录时,会打开一个登录表单弹出窗口,可以取消)
当我取消身份验证时,会触发 $routeChangeError 并且/home
由于/item
从未渲染,我仍在页面上。现在地址栏显示一个错误的 url:/item