gpt4 book ai didi

angularjs - Angular UI 路由器 $transitions.onBefore

转载 作者:行者123 更新时间:2023-12-04 14:41:39 27 4
gpt4 key购买 nike

我正在使用 angular ui 路由器版本 1.0.0-alpha.4 并且由于默认情况下根范围事件处于非事件状态,我想使用实现身份验证机制的新方法如下。

.run(['$transitions', '$timeout', '$q', '$state', 'AuthService', ($transitions, $timeout, $q, $state, AuthService) => {
$transitions.onBefore({ to: 'app.*', from: '*' }, () => {
const deferred = $q.defer();
AuthService.isLoggedIn().then(() => {
deferred.resolve()
}, () => {
// redirect to error page
// how can i redirect user to error page. $state.go('error') not working.
deferred.reject()
});
return deferred.promise;
}, {priority: 10});
}])

但是问题是我不确定如何将用户重定向到错误页面。我尝试使用 $state.go('error') 并且似乎不起作用。有什么建议?

最佳答案

很酷,我找到了解决方案。将此发布给可能提出相同问题的任何人。您所需要的只是按如下方式解决 promise 。

deferred.resolve($state.target('error', undefined, { location: true }))

关于angularjs - Angular UI 路由器 $transitions.onBefore,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36962954/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com