请问如何搭建
dist
|--- css
|--- img
|--- js
|--- fonts
src
|--- scss
|--- img
|--- js
|--- fonts
gulpfile.js
结构?
因为fonts和img文件基本上是不变动的(img就原图,不用imagemini压缩)。
就是说先要把src下的fonts目录和img目录复制到dist/下面。
仆的代码:
var gulp = require("gulp");var sass = require("gulp-sass");// 复制静态资源var staticfolder = [];var fonts = { dist: "dist/fonts/", src: "src/fonts/**/*"}var img = { dist: "dist/img/", src: "src/img/**/*"} staticfolder = [fonts, img]; gulp.task("static", function () { staticfolder.forEach(function (item) { gulp.src(item.src).pipe(gulp.dest(item.dist)); }) }); gulp.task("static:watch", function () { var folder = staticfolder.map(function (item) { return item.src }); gulp.watch(folder, ["static"]) }) gulp.task("default", ["static:watch"]);
这样的代码在新增的时候还没问题,但是在重命名和删除文件的时候就会遇到问题。
在删除的时候,watch可能会报错,不会同步去删除dist的,然后直接退出watch(重命名跟删除差不多,是一样的问题)。
而且还有一个问题,就是我每次变动img目录或者fonts目录都会重新把这些静态资源全部重新复制一遍到dist下,所以我感觉这样不是很科学。请问怎么只复制相应改动的部分呢?
相关分类