我想要实现的目标
我想转换到某个状态(登录),以防$ http请求返回401错误.因此我创建了一个$ http拦截器.
问题
当我试图在拦截器中插入'$ state'时,我得到一个循环依赖.为什么以及如何解决它?
码
//Inside Config function
var interceptor = ['$location', '$q', '$state', function($location, $q, $state) {
function success(response) {
return response;
}
function error(response) {
if(response.status === 401) {
$state.transitionTo('public.login');
return $q.reject(response);
}
else {
return $q.reject(response);
}
}
return function(promise) {
return promise.then(success, error);
}
}];
$httpProvider.responseInterceptors.push(interceptor);
Run Code Online (Sandbox Code Playgroud) 我正在寻找一种渲染404页面的好方法,而不是在angularjs中重定向404页面.我发现的许多解决方案都是关于重定向到另一个页面.如果用户点击浏览器的后退按钮,我将创建另一个重定向到404页面的问题.所以我正在寻找一个渲染404页面的解决方案.
感谢您的阅读,我希望这对您们来说是可以理解的.