grunt:观察并同步文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了grunt:观察并同步文件相关的知识,希望对你有一定的参考价值。
我想运行本地同步守护进程。
它应该观察src
目录并将任何更改的文件复制到dst
目录。 src
中有许多子目录,因此应保留相对路径。 dst
中已创建所有必需的子目录。
我想仅过滤*.js
文件。
我找到了一个grunt-sync工具。文档很短,我甚至不知道它是否适合我。这是我的Gruntfile
:
module.exports = function (grunt) {
grunt.initConfig({
sync: {
main: {
files: [{
cwd: src,
src: ['**/*.js'],
dest: dst
}]
}
}
});
grunt.loadNpmTasks('grunt-sync');
grunt.registerTask('default', 'sync');
};
当我咕噜咕噜地跑,我看不到任何看守任务。 Grunt冻结几秒钟,然后复制所有文件并退出。我想要一个watch-sync守护进程。
答案
我创建了一个名为duplicate的工具,它可以完成你想要的工作(虽然一年后),它会在启动时复制所有匹配的文件,并继续观察是否会有任何变化。
它不是作为Gulp或Grunt插件编写的,因为它不需要,但当然你可以轻松地在Gulp或Grunt任务中运行它。
看看https://github.com/vilic/duplicate
另一答案
可能有点晚了但是......我有同样的问题。我做的是结合两个工具.. grunt-sync和grunt-contrib-watch ..
module.exports = function(grunt){
grunt.initConfig({
sync: {
main: {
files: [{
cwd: src,
src: ['**/*.js'],
dest: dst
}]
}
},
watch: {
jsxfiles: {
files: ['**/*.js'],
tasks: ['sync:main'],
} //this means that when any of the pattern files changes, the sync task will be run...
}
});
grunt.loadNpmTasks('grunt-sync');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.registerTask('default', 'watch'); //run the watch task isntead of just the sync once..
};
我希望这是有帮助的
KR Jon
以上是关于grunt:观察并同步文件的主要内容,如果未能解决你的问题,请参考以下文章