Angular js $rootScope.$on 根本没有被访问,就好像它从未存在过一样
Angular js $rootScope.$on is not being reached at all as if it never existed
当我将 console.log
移动到 rootscope.on 上方时,它会打印它,但由于某种原因,就好像根本没有达到 rootscope.on:
'use strict';
var app = angular.module('myApp', ["ui.router"]);
app.config(function($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/login');
$stateProvider
.state('app', {
template: "<ui-view></ui-view>",
abstract: true
})
.state('app.login', {
url: '/login',
controller: 'loginCtrl',
templateUrl: 'content/auth/login.html',
requireLogin: false,
authorized: true
})
.state('app.register', {
url: '/register',
controller: 'registerCtrl',
templateUrl: 'content/auth/register.html',
requireLogin: true,
authorized: true
});
});
app.run(function($rootScope, $state) {
$rootScope.$('$stateChangeStart', function(event, toState) {
console.log("redirecting");
})
});
你实际上并不是在调用 $on
。
改变
$rootScope.$('$stateChangeStart', function(event, toState) {
console.log("redirecting");
})
到
$rootScope.$on('$stateChangeStart', function(event, toState) {
console.log("redirecting");
})
当我将 console.log
移动到 rootscope.on 上方时,它会打印它,但由于某种原因,就好像根本没有达到 rootscope.on:
'use strict';
var app = angular.module('myApp', ["ui.router"]);
app.config(function($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/login');
$stateProvider
.state('app', {
template: "<ui-view></ui-view>",
abstract: true
})
.state('app.login', {
url: '/login',
controller: 'loginCtrl',
templateUrl: 'content/auth/login.html',
requireLogin: false,
authorized: true
})
.state('app.register', {
url: '/register',
controller: 'registerCtrl',
templateUrl: 'content/auth/register.html',
requireLogin: true,
authorized: true
});
});
app.run(function($rootScope, $state) {
$rootScope.$('$stateChangeStart', function(event, toState) {
console.log("redirecting");
})
});
你实际上并不是在调用 $on
。
改变
$rootScope.$('$stateChangeStart', function(event, toState) {
console.log("redirecting");
})
到
$rootScope.$on('$stateChangeStart', function(event, toState) {
console.log("redirecting");
})