我如何在angular的每个控制器之前控制$rootScope ?



我正在调试步骤。有好几页。每次,我都需要控制$rootScope进行调试。我想知道是否有一种方法可以对所有控制器的$rootScope进行控制台日志?换句话说,我如何在每个控制器的角度前控制$rootScope ?

更新:

我的意思是语句应该在所有控制器之前运行,而不修改控制器。

如果你正在使用angular路由,你可以使用:

angular.module('myModule').run([ '$rootScope', function($rootScope) {
    $rootScope.$on("$locationChangeStart", function() {
        console.log($rootScope);
    });
} ]);

如果你使用的是ng-view,你可以监听$viewContentLoaded

在执行route change locationChangeStart之前,如果你想要控制它,那么你可以先从主控制器控制或初始化它。

var app = angular.module('app', ['ngRoute']);
app.controller('MainController', ['$scope', '$rootScope', 'myServices', function ($scope, $rootScope, myServices) {
        $rootScope.test = 'Hello World';
        console.log($rootScope.test);
    }]);

最新更新