Javascript Grunt任务运行,但单独运行每个依赖项任务失败

Javascript Grunt任务运行,但单独运行每个依赖项任务失败,javascript,gruntjs,Javascript,Gruntjs,我试图修改我们的grunt“build”任务,但我很难确定它是如何工作的。我们的任务定义如下: grunt.registerTask('build', [ 'clean:dist', 'useminPrepare', 'concurrent:dist', 'autoprefixer', 'concat', 'copy:dist', 'cdnify', 'ngmin', 'cssmin', 'uglify', 'filerev', 'usemin:h

我试图修改我们的grunt“build”任务,但我很难确定它是如何工作的。我们的任务定义如下:

grunt.registerTask('build', [
  'clean:dist',
  'useminPrepare',
  'concurrent:dist',
  'autoprefixer',
  'concat',
  'copy:dist',
  'cdnify',
  'ngmin',
  'cssmin',
  'uglify',
  'filerev',
  'usemin:html',
  'usemin:css'
]);
这很好,但如果我尝试单独运行此列表中的每个任务,则在“concat”任务上我会得到:

未找到“concat”目标

果然,“concat”任务被注释掉了:

// not used since Uglify task does concat,
// but still available if needed
/*concat: {
  dist: {}
},*/
我想可能只是忽略了这些任务,但当我以这种方式单独运行每个命令时,我的最终产品缺少了一些“.js”文件。我错过了什么,在这里

  • 为什么在运行
    grunt build
    时concat没有定义,而在运行
    grunt-concat
    时却没有定义
  • 为什么运行
    grunt build
    与按顺序运行
    grunt clean:dist
    grunt useminPrepare
    等会得到不同的结果
  • 看起来你好像在想。如果同时运行它们,则定义concat任务


    grunt useminPrepare concat

    如果任务被注释掉,你为什么说它“有效”?当你运行grunt时,它什么也没说吗?至于按顺序运行时不起作用的事情,这完全取决于实际任务是如何定义的。没有代码,无法回答。当我运行
    grunt build
    时,它会在运行完autoprefixer后打印出“running concat:dist”。是否可能使用MinPrepare自动创建“concat”任务?