繁体   English   中英

load-grunt-config找不到目标任务

[英]load-grunt-config not finding target task

我想将一个较大的gruntfile拆分为较小的部分,并撰写以下文章: https : //github.com/firstandthird/load-grunt-config http://ericnish.io/blog/how-to-neatly-separate-grunt -files /但是,似乎我缺少明显的东西。 当我发出“ grunt testtask”时,找不到任务。 很明显,我做错了什么,但我不明白。 这是文件的内容,已尽可能地减少了:

gruntfile.js:
module.exports = function(grunt) {
 var path = require('path');

 require('load-grunt-config')(grunt, {
    configPath: path.join(process.cwd(), 'grunt3'),
        init: true
  });
};

grunt3/testtask.js:
module.exports = {
  copy: {
    main:   
    {
        files: 
        [{
           src:  "test1.txt",
           dest: "test2.txt"
        }]
    }
  }
};

I added an aliases file:
module.exports = {
  'default': [],
  'mytesttask': [
    'testtask'
  ]
};

找到默认值。 对于mytesttalk,我得到“找不到testtask”。 aliass.js是否应该为文件名(testtask)或“ copy”(我也尝试使用“ copy”作为目标任务)执行registerTask? 根据--config-debug,有一个名为“ testtask”的配置对象。 我在这里想念什么?

谢谢。

附录:发现这篇关于同一主题的非常简单明了的文章,显示了如何进一步简化。 再次,这是行不通的。 找不到别名中指定的任务。 例如'mytesttask':['testtask']-> testtask找不到,尽管有一个grunt / testtask.js文件包含原始gruntfile中的任务。 我想念什么?

在这篇出色的文章http://mattbailey.io/a-beginners-guide-to-grunt-redux.html的帮助下,该模块的一位作者在github上发表了评论,我终于发现了我的想法中的缺陷。 这些文件不是按任务或目标组织的,而是按grunt模块组织的。 因此, 您必须将它们命名为copy.js(来自grunt-contrib-copy),cssmin.js(来自grunt-contrib-cssmin),concat.js(来自grunt-contrib-concat),并将各种目标放置在这些文件中 并非相反(如我所想)。 也许文档中的其他人很清楚,但这不是我的意思。 马特·贝利(Matt Bailey)的那篇文章非常出色,因为它仅显示了真正必要的内容。 我上面引用的Eric Nishio撰写的文章不必要地复杂,因为它没有考虑别名文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM