RequireJS + AngularJS Seed 13 _Grunt-plugin

看配置文档看得头都要炸了,敢不敢再烦点。

  • grunt.loadNpmTasks('grunt-contrib-watch');

监控文件变化,如果文件发生追加,更新或者删除的时候,执行预定义任务。
比如:

watch: {
    server: {
        files: [".nodemon"],
        options: {
            livereload: true
        }
    }
}
  • grunt.loadNpmTasks('grunt-mocha-test');

Mocha 的插件:
比如:

mochaTest: {
    server: {
        src: ['test/server/**/*.js']
    }
}
  • grunt.loadNpmTasks('grunt-karma');

Karma 的插件
比如:

karma: {
    unit: {
        configFile: 'test/client/karma.conf.js'
    }
}
  • grunt.loadNpmTasks('grunt-protractor-runner');

Protractor 的插件
比如:

protractor: {

e2e: {
    configFile: "test/client/protractor.conf.js",
    keepAlive: false
}

}

  • grunt.loadNpmTasks('grunt-nodemon');

nodemon 的插件,用来简化工作流配置。
比如:

nodemon: {
    dev: {
        script: 'app.js',
        options: {
            nodeArgs: ['--debug', '--harmony'],
            ignore: ['node_modules/**', 'client/**'],
            callback: function (nodemon) {
                fs.writeFileSync('.nodemon', 'started');
                nodemon.on('log', function (event) {
                    console.log(event.colour);
                });
                nodemon.on('restart', function () {
                    setTimeout(function () {
                        fs.writeFileSync('.nodemon', 'restarted');
                    }, 250);
                });
            }
        }
    }
}
  • grunt.loadNpmTasks('grunt-concurrent');

可以同时执行多个 Grunt 任务。
比如:

concurrent: {
    tasks: ['nodemon', 'watch'],
    options: {
        logConcurrentOutput: true
    }
}
  • grunt.loadNpmTasks('grunt-env');

把 ENV 作为任务配置。
比如:

grunt.registerTask('test', ['env:test', 'mochaTest:server', 'karma:unit']);
  • grunt.loadNpmTasks('grunt-contrib-jshint');

美化JShint报告。
比如:

jshint: {
    options: {
        reporter: require('jshint-stylish')
    },
    target: ['file.js']
}
  • require('load-grunt-tasks')(grunt);

加载所有 grunt-* 的任务。
比如使用 yo 新建 angular 工程的时候,在 node_modules 下安装了许多模块,

"grunt-autoprefixer": "~0.4.0",
"grunt-bower-install": "~1.0.0",
"grunt-concurrent": "~0.5.0",
"grunt-contrib-clean": "~0.5.0",
"grunt-contrib-concat": "~0.3.0",
"grunt-contrib-connect": "~0.5.0",
"grunt-contrib-copy": "~0.4.1",
"grunt-contrib-cssmin": "~0.7.0",
"grunt-contrib-htmlmin": "~0.1.3",
"grunt-contrib-imagemin": "~0.3.0",
"grunt-contrib-jshint": "~0.7.1",
"grunt-contrib-uglify": "~0.2.0",
"grunt-contrib-watch": "~0.5.2",
"grunt-google-cdn": "~0.2.0",
"grunt-newer": "~0.6.1",
"grunt-ngmin": "~0.0.2",
"grunt-rev": "~0.1.0",
"grunt-svgmin": "~0.2.0",
"grunt-usemin": "~2.0.0",

那么使用上面的将会一把全加载。而无需挨个的 loadNpmTasks。

  • require('time-grunt')(grunt);

显示 Grunt 任务执行的时间。

你可能感兴趣的:(AngularJS,requirejs)