如何注册多个grunt-exec任务?

mca*_*dre 3 shell node.js gruntjs grunt-exec

我想定义在我的shell命令的树Gruntfile.js,用grunt-exec写的shell命令.

我可以为单个命令执行此操作,但我无法弄清楚编写多组命令的语法,并且能够逐个或组地调用它们.

有人可以提供Gruntfile.js以下任务结构的完整充实示例吗?

test: `npm test`
lint:
  jshint: `jshint .`
  csslint: `csslint .`
Run Code Online (Sandbox Code Playgroud)

我来自世界make,所以我真的想把这个工作流程推到我的Node.js项目中,该死的Node社区约定.

我想grunt默认npm test

我想grunt lint同时执行jshint .csslint .

我只想grunt jshint表演jshint .

jgi*_*ich 6

grunt多任务支持多个目标,但它们不能嵌套.但是您可以注册运行其他任务的任务.

Gruntfile.js:

module.exports = function(grunt) {
  grunt.initConfig({
        exec: {
            test: "npm test",
            jshint: "jshint .",
            csslint: "csslint ."
        }
  });

  grunt.loadNpmTasks("grunt-exec");

  grunt.registerTask("default", ["exec:test"]);
  grunt.registerTask("test", ["exec:test"]);
  grunt.registerTask("lint", ["exec:jshint", "exec:csslint"]);
};
Run Code Online (Sandbox Code Playgroud)

请注意,已经有很多可用的grunt任务,例如grunt-contrib-jshint,它们使事情变得更加简单.