$ on('$ stateChangeStart')没有$ scope或$ rootScope

时间:2016-11-08 03:34:40

标签: angularjs angular-ui-router

编辑:为了清晰起见,已移至here

2 个答案:

答案 0 :(得分:3)

$on$scope函数,因此您无法将其与this一起使用。查看文档here

如果您想使用$on,可以使用$scopecontroller as语法。

答案 1 :(得分:0)

你可以试试$ injector

$injector.get('$rootScope').$on('$stateChangeStart',
  function (event, toState, toParams, fromState, fromParams) {
      // write your logic here
  });

angular.injector(['ng']).get('$rootScope').$on('$stateChangeStart',
  function (event, toState, toParams, fromState, fromParams) {
      // write your logic here
  });