$ routeChangeSuccess无法使用ngNewRouter AngularJS 1.4

时间:2015-07-24 09:13:06

标签: javascript angularjs routes router

我将从 AngularJS 1.3 转移到 AngularJS 1.4 。这次我使用 AngularJS 新路线,例如 AngularJS 1.4 中引入的ngNewRouter

我的示例代码如下:

var versionModule = ng.module('test', ['ngNewRouter']);
versionModule.controller('TestController', ['$rootScope', '$router', function ($rootScope, $router) {
    var version = this;
    $router.config([
        {
            path: '/',
            redirectTo: '/home'
        },
        {
            path: '/home',
            component: 'home'
        }
    ]);
    $rootScope.$on('$routeChangeSuccess', function (event, current, previous) {
        console.log("This line is not getting printed ever.");
    });
}]);

路由工作正常但 $ routeChangeSuccess 未被调用:(。

可能 $ routeChangeSuccess 列表将仅使用ngRoute模块进行调用,而我使用ngNewRouter代替ngRoute。如果它是真的那么我应该绑定哪个Lister代替 $ routeChangeSuccess

1 个答案:

答案 0 :(得分:2)

有一些Hook可用于变化检测。我认为你应该在你想要检测变化的控制器上监听激活钩子。您可以查看here了解更多详情。