AngularJS 出现 "Missing 'use strict' statement"-错误,即使我已经包含了这些语句

AngularJS getting "Missing 'use strict' statement"-errors, even tough I've included the statements

我有一个控制器和两个模块,分为三个文件。当我 运行 G运行t 中的 Jshint-Task 时,我总是得到错误,即语句 "use strict" 丢失。所以为了修复这个错误,我将语句包含到这三个文件中,但我仍然得到错误,我不明白为什么。由于我仍在学习 Angular 的基础知识,所以我不知道为什么会这样。

感谢您的回答!

控制器:

"use strict";
angular.module('calculatorApp').controller('HomeController', ['calculatorApp', function(){
    var $this = this;

    $this.test = function () {
        $this.alert('test');
    };
}]);

模块:

"use strict";
    var  calculatorApp = angular.module('calculatorApp', ['ngRoute']);
    calculatorApp.config(function($routeProvider){

        $routeProvider
        .when('/', {
                controller: 'HomeController',
                templateUrl: 'home.tpl.html'
            })
        .otherwise({
                redirectTo: '/'
            })
    });

始终包装您的模块以避免在连接和最小化任务中出错(避免变量冲突和泄漏到全局范围),还包括在此函数中使用严格。

示例:

app.js

var app;
(function (app) {
    'use strict';
    angular.module('app', [
        'module1',
        'module2',
        'moduleX'
    ]);
})(app || (app = {}));

randomcontroller.js

var app;
(function (app) {
    'use strict';
    var RandomController = (function () {
        function RandomController(logger) {
            this.logger = logger;
            this.title = 'RandomView';
            this.logger.info('Activated Random View');
        }
        RandomController.$inject = ['logger'];
        return RandomController;
})();
angular.module('app').controller('RandomController', RandomController);
})(app || (app = {}));

如有任何问题,请参阅 John Papa 的精彩指南 -> https://github.com/johnpapa/angular-styleguide

我想分享我的错误解决方案。看起来我的 src 文件夹中有一个 vendor 文件夹。如果其他人遇到此错误,请检查您的文件夹结构!