使用load-grunt-config进行任务重命名

时间:2016-01-06 21:14:15

标签: gruntjs

我有'观看'来自 grunt-contrib-watch 的任务,我想将其重命名为类似于' delta'并在我自己观看的情况下调用它。我的另一项任务。我也使用 load-grunt-config 。我的配置:

的package.json

{
  "author": "Boris",
  "name": "my-project",
  "version": "0.0.0",
  "dependencies": {},
  "repository": {},
  "devDependencies": {
    "grunt-contrib-copy": "^0.8.2",
    "grunt-contrib-watch": "^0.6.1",
    "load-grunt-config": "^0.19.1"
  }
}

Gruntfile.js

module.exports = function(grunt) {
  require('load-grunt-config')(grunt);

  grunt.renameTask('watch', 'delta');
}

咕噜/ aliases.js

module.exports = {
  watch: [
      'copy',
      'delta'
  ]
};

咕噜/ watch.js

module.exports = {
  options: {
      livereload: true
  },
  js: {
    files: [
        '<%= app_files.js %>'
    ],
    tasks: ['copy']
  }
}

但我有错误:

Warning: Task "watch" not found. Use --force to continue.

似乎是因为

grunt.renameTask('watch', 'delta');

配置加载后,但另一方面,我之前无法插入这段代码,因为没有声明的&#39; watch&#39;配置加载前的任务。

任何想法如何正确实施?

1 个答案:

答案 0 :(得分:0)

我从未使用过renameTask,所以我不能说,但我们通过registerTask来做到这一点。在您的情况下,您可能想要使用

grunt.registerTask('delta', ['watch']);

registerTask的另一个好处是,您可以分配一个任务来执行多项操作(即test可能构建,jshint和scsslint)。