我正面临着一个不知道如何解决的问题。我想在这里弄点光。
给定使用标准AngularJS进行路由的AngularJS应用程序,并考虑到当最终用户试图访问私有区域时,他被重定向到寄存器区域,则会发生以下情况:
这是因为每次应用程序使用$routerProvider重定向时,它都会推送浏览器历史记录中的所有路由。
我的问题是,如何在浏览器历史记录中跳过失败的/profile访问?如何告诉浏览器在用户登录之类的给定条件下不保存此路由?
关于历史的常见问题:history
发布于 2015-04-14 17:15:07
如果使用$location内置服务重定向,则可以使用$location.replace()替换当前的历史记录条目:
if (notLoggedIn) {
$location.url( "/profile/register" );
$location.replace();
}注意,这只适用于当前摘要,正如API文档中所指出的那样。
https://stackoverflow.com/questions/29558085
复制相似问题