我已经越过了这个npm模块的路径,用于grunt,github.com / zanturgut / grunt-modules,它提供了一种在Gruntfiles.js中实现真正分离的方法,使其更具可读性。 但我想知道为什么不鼓励它作为最佳实践。 有什么建议吗?
答案 0 :(得分:0)
因为这不是Grunt的最佳做法。该库只是在任务之上添加了另一个抽象。这意味着如果您按照其规范编写模块,则您的模块将仅与其库一起使用。从而进一步划分了社区。 p>
除grunt-modules
外,它还会为grunt
创建对等依赖关系。对等依赖关系不容易管理,特别是如果对等作者没有严格遵循semver。在大多数情况下,甚至不需要成为同伴。
不建议使用this.data
。
Grunt团队正朝着基于Node.js require()
的方法发展。这将删除对grunt的对等依赖关系,并允许整个node.js生态系统使用Grunt任务。 Grunt团队希望鼓励其他用户尝试并效仿。
因此,使用require()
向Gruntfile添加帮助程序是模块化Gruntfile的最佳方法。 Grunt的下一版本的方法应该极大地帮助用户更好地模块化他们的grunt文件。