在运行grunt angular时,我遇到了一些奇怪的事情。但是,由于某些原因,它会看到文件,并在运行命令‘`grunt release -v’时忽略这些文件。结果是:
Running "angular-builder:app" (angular-builder) task
Verifying property angular-builder.app exists in config...OK
Files: app/components/home/homeController.js, app/core/app.js -> build/admin_tools.js
Options: mainModule="AdminTools"
Reading app/components/home/homeController.js...OK
Ignored file: app/components/home/homeController.js
Generating the release build...
Not optimizing anchorScrollOffsetExample because it shares some/all of its files with other modules.
Including module ngRoute.
Scanning ngRoute for non-angular script dependencies...
Validating app/core/angular-route.js...OK
Including module AdminTools.
Scanning AdminTools for non-angular script dependencies...
Validating app/core/app.js...OK
Writing build/admin_tools.js...OK
Done, without errors.正如您所看到的,它看到了一个名为homController.js的js文件,但随后忽略了它,我不知道为什么。该文件的内容是。
app.controller('homeController', ['$scope', '$log', function ($scope, $log){
doThis = function(){
alert('Hello There');
}
}]);非常简单的东西。app.js如下所示:
var app = angular.module('AdminTools', ['ngRoute']);
app.config(['$routeProvider', function($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'app/templates/login.html',
controller: 'homeController'
})
.otherwise({ redirectTo: '/' });
}]);--编辑添加Grunt文件--
module.exports = function (grunt){
grunt.initConfig ({
'angular-builder': {
options: {
mainModule: 'AdminAdmin'
},
app: {
src: 'app/**/*.js',
dest: 'build/admin_tools.js'
}
}
});
grunt.loadNpmTasks ('grunt-angular-builder');
grunt.registerTask ('default', ['angular-builder']);
grunt.registerTask ('release', ['angular-builder']);
grunt.registerTask ('debug', ['angular-builder::debug']);
};不知道我错过了什么。
发布于 2015-05-16 09:25:31
我能够弄清楚问题所在。这与我模块化应用程序的方式有关。
控制器需要是:
angular.module('home.controller', [])
.controller('homeController', ['$scope', '$log', function ($scope, $log){
doThis = function(){
alert('Hello There');
}
}]);app.js注册依赖项,如下所示。
angular.module('AdminTools', [
'ngRoute',
'home.controller']);
angular.config(['$routeProvider', function($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'app/templates/login.html',
controller: 'homeController'
})
.otherwise({ redirectTo: '/' });
}]);https://stackoverflow.com/questions/30270065
复制相似问题