angularjs:$ stateChangeStart没有使用相同级别的嵌套状态触发

时间:2015-04-13 13:03:17

标签: angularjs angular-ui-router

在app-config中,我有这样的陈述:

$stateProvider               
            .state('main', {
                url: "/main",
                templateUrl: "partials/main.html"
            })
            .state('main.state1',
            {
                url: "^/someurl1",
                templateUrl: "sometemplate.html",
                controller: 'somectrl'

            })
            .state('main.state2',
            {
                url: "^/someurl2",
                templateUrl: "sometemplate2.html",
                controller: 'somectrl2'

            })
            .state('main.state1.substate',
            {
                url: "^/someurl1/substate",
                templateUrl: "sometemlp.html",
                controller: 'substatectrl'
            });

然后我得到了指示状态变化的指令:

     $rootScope.$on('$stateChangeStart', function (event, toState, toParams, fromState , fromParams) {
         //somecode
}

问题是:$stateChangeStart当我从子状态转到state1 / state2时触发,但是当我进入相同的嵌套级别状态时没有被触发,例如:从state1到state2或从一个子状态到另一个子状态,会导致什么?这是一个错误吗?

0 个答案:

没有答案