Angular 是否有创建控制器时的事件

Does Angular have an event for when a controller is created?

本文关键字:事件 控制器 创建 是否 Angular      更新时间:2023-09-26

我尝试过使用$rootScope.$on('$routeChangeSuccess', function(event, next){...}),但有时next.scope是未定义的。控制器的$scope准备就绪后,是否有可以使用的事件?

我有一个服务,我想在加载新路由时执行操作,我宁愿不必在每个控制器的开头添加函数调用。

据我所知,没有记录在案的事件表明控制器作用域在准备就绪时会发出。

但是你可以用下面的代码来实现你的目的,但它有点棘手:

$rootScope.$on('$routeChangeSuccess', function(evt, to, params) {
            console.log(to.scope); // undefined
            $rootScope.$evalAsync(function(){
                console.log(to.scope); //it is ready
            })
        });