相关疑难解决方法(0)

将$ state(ui-router)注入$ http拦截器会导致循环依赖

我想要实现的目标

我想转换到某个状态(登录),以防$ 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)

angularjs angular-ui-router

118
推荐指数
3
解决办法
4万
查看次数

渲染404而不是在angularjs中重定向404

我正在寻找一种渲染404页面的好方法,而不是在angularjs中重定向404页面.我发现的许多解决方案都是关于重定向到另一个页面.如果用户点击浏览器的后退按钮,我将创建另一个重定向到404页面的问题.所以我正在寻找一个渲染404页面的解决方案.

感谢您的阅读,我希望这对您们来说是可以理解的.

user-experience angularjs

15
推荐指数
1
解决办法
2万
查看次数