javascript - 使用gulp replace怎么替换原文件,而不是生成新文件?
本文介绍了javascript - 使用gulp replace怎么替换原文件,而不是生成新文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
到stackoverflow,google,百度搜了很多,也没有搜到相关的资料,都有点想自己写一个插件了。
exp:
let gulp = require('gulp');
let batchReplace = require('gulp-batch-replace');
gulp.src('html/**/*.html')
.pipe(batchReplace([
1: 2,
2: 3
]))
.pipe(gulp.dest('.')) //这个dest使用啥?gulp.src貌似不行,'.'当前目录也不行。
大家有没有碰到类似问题,有什么好的解决方案?
PS:为什么另一个dist目录?因为使用的是类JQ前端,不是单页...
==== 补充 ======
我找到了,搜索的思路有问题,之前搜的replace应该搜overwrite好点,问题链接
解决方案
整个文件数据流还在进行过程中的时候,好像是不能删除作为源头的文件的。(只是好像,我自己也记不太清了。
不过是有办法绕过这个机制的,虽然有点繁琐。
监控整个数据流的finish
事件,事件触发的时候删除源文件,删除完成之后再把输出的新文件改成源文件的名字就行了。我以前就是这么做的,不知道现在有没有相应插件。
这篇关于javascript - 使用gulp replace怎么替换原文件,而不是生成新文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文