首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >grunt-angular-builder“忽略的文件”

grunt-angular-builder“忽略的文件”
EN

Stack Overflow用户
提问于 2015-05-16 07:09:23
回答 1查看 203关注 0票数 1

在运行grunt angular时,我遇到了一些奇怪的事情。但是,由于某些原因,它会看到文件,并在运行命令‘`grunt release -v’时忽略这些文件。结果是:

代码语言:javascript
复制
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文件,但随后忽略了它,我不知道为什么。该文件的内容是。

代码语言:javascript
复制
app.controller('homeController', ['$scope', '$log', function ($scope, $log){

    doThis = function(){
        alert('Hello There');
    }

}]);

非常简单的东西。app.js如下所示:

代码语言:javascript
复制
var app = angular.module('AdminTools', ['ngRoute']);   

app.config(['$routeProvider', function($routeProvider) {

    $routeProvider 
        .when('/', {
            templateUrl: 'app/templates/login.html',
            controller: 'homeController'
        })
        .otherwise({ redirectTo: '/' });
}]);

--编辑添加Grunt文件--

代码语言:javascript
复制
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']);

};

不知道我错过了什么。

EN

回答 1

Stack Overflow用户

发布于 2015-05-16 09:25:31

我能够弄清楚问题所在。这与我模块化应用程序的方式有关。

控制器需要是:

代码语言:javascript
复制
angular.module('home.controller', [])
    .controller('homeController', ['$scope', '$log', function ($scope, $log){

        doThis = function(){
            alert('Hello There');
        }

}]);

app.js注册依赖项,如下所示。

代码语言:javascript
复制
angular.module('AdminTools', [
    'ngRoute',
    'home.controller']);  

angular.config(['$routeProvider', function($routeProvider) {

    $routeProvider 
        .when('/', {
            templateUrl: 'app/templates/login.html',
            controller: 'homeController'
        })
        .otherwise({ redirectTo: '/' });
}]);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30270065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档