我总是使用gulp来完成我的所有任务自动化,但在我们当前的项目中,我们使用grunt,我无法弄清楚如何制作非常简单的事情:
grunt.initConfig({
watch: {
scripts: {
files: '**/*.js',
tasks: ['karma:watch:run'],
}
},
myWatch: {
scripts: {
files: '**/*.js',
tasks: ['do_my_own_task_but_not_karma'],
}
}
});
//current task
grunt.registerTask('default', ['watch']);
//doesn't work
grunt.registerTask('myWatchTask', ['myWatch']);
基本上我只想覆盖我自己的自定义任务的当前监视配置,因为我不希望每次更改js文件时都会运行测试。
答案 0 :(得分:1)
您需要在draft-4
配置对象中添加新配置:
watch
然后,您可以投放grunt.initConfig({
watch: {
main: {
scripts: {
files: '**/*.js',
tasks: ['karma:watch:run'],
}
},
myWatch: {
scripts: {
files: '**/*.js',
tasks: ['do_my_own_task_but_not_karma'],
}
}
},
});
或grunt watch:main
,see these docs。
如果您希望始终观看某些内容,可以将其添加到grunt watch:myWatch
配置对象的根目录。
watch
现在grunt.initConfig({
watch: {
files: '**/always.js',
tasks: ['always'],
main: {
scripts: {
files: '**/*.js',
tasks: ['karma:watch:run'],
}
},
myWatch: {
scripts: {
files: '**/*.js',
tasks: ['do_my_own_task_but_not_karma'],
}
}
},
});
将在grunt watch:myWatch
配置对象的根目录中运行它的专用配置和配置。