(function () {
'use strict';
angular.module('app', ['ngResource', 'ngRoute']);
angular
.module('app')
.config(function ($routeProvider) {
$routeProvider
...
.when('/admin/users', {
templateUrl: '/partials/admin/users',
controller: 'usersController',
resolve: { isAdmin: isAdmin }
});
})
isAdmin.$inject = ['$rootScope', '$location'];
function isAdmin($rootScope, $location) {
console.log("isAdmin");
a = 12;
console.log("isAdmin2");
}
}());
此代码无法访问第二个console.log。控制台中没有错误。
当我在控制台中尝试示例代码(Firefox Quantum 58.0(64位))时,它可以工作:
(function () {
"use strict";
c = 3;
})();
ReferenceError: assignment to undeclared variable c
(function () {
u = 3;
})();
undefined
严格模式适用于控制器和服务(浏览器控制台显示错误)。