成功转换后,angularJS从状态返回

时间:2015-11-03 00:38:30

标签: angularjs angular-ui-router

在我的注册页面中,我最终使用$state.go()重定向用户注册成功。

目标状态成功解析后,已完全渲染,并在那里坐了大约500毫秒,应用程序正在尝试返回到寄存器状态。

在HTML5模式下,它似乎触发了一个难以刷新的地方,我无法捕捉状态变化,观看$ stateChangeStart,当我不处于HTML5模式时,我可以捕获事件并阻止它,但这显然是一个黑客。

我应该在哪里查看此信息?我很丢失。似乎没有任何事件被触发,并且greping代码库,有0个地方可以显式重定向。

我正在使用 angular 1.3.15 ui-router 0.2.14

修改

请注意,解决方案中的问题重定向会重定向到登录,而不是注册

注册控制器中的

$state.go(Constants.STATE.INTRO, { allRec: 'all' });

介绍控制器中的

angular.module("myApp").config(function($stateProvider, Constants) {
    $stateProvider.state(Constants.STATE.INTRO, {
            url: "/intro/:allRec?query&category",
            views: {
                "grid@INTRO": {
                    templateUrl: "views/intro/layout.html",
                    controller: "IntroCtrl as intro"
                }
            },
            resolve: {
                introData: function(IntroService, $stateParams) {
                    return IntroService.getIntro()
                    .then(function(data) {
                        IntroService.getCount();
                        return data;
                    }).catch(function(err) {
                        if (err && err.status && err.status === 401 || err.status === 500) {
                            $state.go(Constants.STATE.LOGIN);
                        }
                    });
                }
        });
    })
    .controller("IntroCtrl", IntroCtrl);

0 个答案:

没有答案