【发布时间】:2016-03-28 18:05:08
【问题描述】:
我有一个重定向到相同状态的状态更改回调。
$rootScope.$on('$stateChangeStart', function(event, toState, toStateParams) {
if (toState.name != 'wsConnect') {
console.log("change path!!");
$location.path('/connect');
}
});
当用户打开新标签并输入带有任何 url 锚点的路由时,它从一开始就可以正常工作。用户从回调中看到视图,但是 如果用户手动更改锚点并按回车键 回调一半工作 - 锚点值被恢复,但用户看到的不是来自锚点的路线视图。
如果您重新加载页面,“错误”就会消失。
我找到了解决方法:
if (toState.name != 'wsConnect') {
console.log("change path!!");
$interval(function () {
$state.go('wsConnect');
$location.path('/connect');
}, 1, 1);
}
【问题讨论】:
-
请检查How to create a Minimal, Complete, and Verifiable example 并完善您的答案,以便我们更好地了解您的代码中发生的情况。
标签: javascript angularjs angular-ui-router