Node.js 任务名称在grunt中是如何映射的?

Node.js 任务名称在grunt中是如何映射的?,node.js,gruntjs,Node.js,Gruntjs,我无法理解grunt如何将任务与grunfile.js匹配: module.exports = function (grunt) { grunt.initConfig({ concat: { dist: { src: ['src/*.js'], dest: 'dest/all.js' } } }); grunt.loadNpmTasks('grunt-contrib-concat'); grunt.

我无法理解grunt如何将任务与
grunfile.js
匹配:

module.exports = function (grunt) {
grunt.initConfig({
    concat: {
        dist: {
            src: ['src/*.js'],
            dest: 'dest/all.js'
        }
    }

});
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.registerTask('default', ['concat']);
})

这是一个有效的配置。但我不知道grunt如何将'concat'匹配到'grunt-contrib-concat'
grunt是否修剪“grunt contrib-”前缀以匹配“concat”与“grunt contrib concat”

contrib-less,contrib-jade,contrib-concat….所以contrib只是表示这些插件是由Grunt社区开发人员提供的,less,jade,concat表示您希望在项目中使用的模块,如grunfile.js中所述

所以当你说:

grunt.loadNpmTasks('grunt-contrib-concat')
它加载所提到的模块

但是为了使它在你发射咕噜声时工作,你实际上必须注册它

grunt.registerTask('default', ['concat','jade','less']);
grunt.registerTask('test', ['concat','jade','less']);
grunt.registerTask('dist', ['concat','jade','less','uglify']);
因此,正如您在制作中所看到的那样,我们可能希望丑陋,因此我们可以通过“dist”在中注册我们的任务

contrib-less,contrib-jade,contrib-concat….所以contrib只是表示这些插件是由Grunt社区开发人员提供的,less,jade,concat表示您希望在项目中使用的模块,如grunfile.js中所述

所以当你说:

grunt.loadNpmTasks('grunt-contrib-concat')
它加载所提到的模块

但是为了使它在你发射咕噜声时工作,你实际上必须注册它

grunt.registerTask('default', ['concat','jade','less']);
grunt.registerTask('test', ['concat','jade','less']);
grunt.registerTask('dist', ['concat','jade','less','uglify']);
因此,正如您在制作中所看到的那样,我们可能希望丑陋,因此我们可以通过“dist”在中注册我们的任务

contrib-less,contrib-jade,contrib-concat….所以contrib只是表示这些插件是由Grunt社区开发人员提供的,less,jade,concat表示您希望在项目中使用的模块,如grunfile.js中所述

所以当你说:

grunt.loadNpmTasks('grunt-contrib-concat')
它加载所提到的模块

但是为了使它在你发射咕噜声时工作,你实际上必须注册它

grunt.registerTask('default', ['concat','jade','less']);
grunt.registerTask('test', ['concat','jade','less']);
grunt.registerTask('dist', ['concat','jade','less','uglify']);
因此,正如您在制作中所看到的那样,我们可能希望丑陋,因此我们可以通过“dist”在中注册我们的任务

contrib-less,contrib-jade,contrib-concat….所以contrib只是表示这些插件是由Grunt社区开发人员提供的,less,jade,concat表示您希望在项目中使用的模块,如grunfile.js中所述

所以当你说:

grunt.loadNpmTasks('grunt-contrib-concat')
它加载所提到的模块

但是为了使它在你发射咕噜声时工作,你实际上必须注册它

grunt.registerTask('default', ['concat','jade','less']);
grunt.registerTask('test', ['concat','jade','less']);
grunt.registerTask('dist', ['concat','jade','less','uglify']);
因此,正如您在制作中所看到的那样,我们可能希望丑陋,因此我们可以通过“dist”在中注册我们的任务。

首先,我们查看内部:

从内部看,传入任务注册函数的第一个参数是任务的名称:

 grunt.registerMultiTask(taskName, [description, ] taskFunction)

 grunt.registerTask(taskName, [description, ] taskFunction)
结论
  • 没有“神奇”的名字,也没有“咕哝的关键词”
  • 自定义任务和任务插件之间没有区别(即使是grunt contrib…)
  • 创建任务的API就这么简单
    • 首先,我们看一下内部:

      从内部看,传入任务注册函数的第一个参数是任务的名称:

       grunt.registerMultiTask(taskName, [description, ] taskFunction)
      
       grunt.registerTask(taskName, [description, ] taskFunction)
      
      结论
      • 没有“神奇”的名字,也没有“咕哝的关键词”
      • 自定义任务和任务插件之间没有区别(即使是grunt contrib…)
      • 创建任务的API就这么简单
        • 首先,我们看一下内部:

          从内部看,传入任务注册函数的第一个参数是任务的名称:

           grunt.registerMultiTask(taskName, [description, ] taskFunction)
          
           grunt.registerTask(taskName, [description, ] taskFunction)
          
          结论
          • 没有“神奇”的名字,也没有“咕哝的关键词”
          • 自定义任务和任务插件之间没有区别(即使是grunt contrib…)
          • 创建任务的API就这么简单
            • 首先,我们看一下内部:

              从内部看,传入任务注册函数的第一个参数是任务的名称:

               grunt.registerMultiTask(taskName, [description, ] taskFunction)
              
               grunt.registerTask(taskName, [description, ] taskFunction)
              
              结论
              • 没有“神奇”的名字,也没有“咕哝的关键词”
              • 自定义任务和任务插件之间没有区别(即使是grunt contrib…)
              • 创建任务的API就这么简单

              你想告诉我concat是grunt的常用词吗?是的,jade、concat和less都是grunt的关键词。grunt没有“关键词”。只需一个任务注册apyes用简单的话来说,
              task runner
              读取
              jade、concat、less…
              中提到的任务。但严格来说,它们不是关键词。只是社区为它定义了规范,我们遵循。你想告诉我concat是grunt的一个众所周知的词吗?是的,jade,concat,less都像grunt的一个关键字。grunt没有“关键字”。只需一个任务注册apyes用简单的话来说,
              task runner
              读取
              jade、concat、less…
              中提到的任务。但严格来说,它们不是关键词。只是社区为它定义了规范,我们遵循。你想告诉我concat是grunt的一个众所周知的词吗?是的,jade,concat,less都像grunt的一个关键字。grunt没有“关键字”。只需一个任务注册apyes用简单的话来说,
              task runner
              读取
              jade、concat、less…
              中提到的任务。但严格来说,它们不是关键词。只是社区已经为它定义了规范,我们遵循。你想告诉我concat是grunt的一个广为人知的词吗?