我有一个文件,我用它打开src
并尝试用gulp-through2.obj
. 对于测试,我想将其中的文本“someText”更改为形成的字符串,但不会发生替换。我的任务如下所示:
gulp.task(`wp`, () => {
let filepathes = new Array();
return src(project.src.html)
.pipe(through((file, enc, cb) => {
fs.readFile(file.path, "utf-8", (err, doc) => {
if (err) console.log(err);
filepathes = doc.match(/([`"'])\S+?\.(css)\1/gi);
console.log(filepathes)
let replaceExp = new RegExp(`wp_enque_style(` + filepathes[0] + "\);\r\n");
doc.replace('someText', replaceExp)
})
return cb(null, file)
}))
.pipe(rename({ extname: `.php` }))
.pipe(dest(project.build.php))
}
);
尽管文本是文件中所需的文本。它也不会向控制台抛出任何错误。console.log
虽然它工作正常。可能是什么问题呢?没有替代品,因为它fs.readFile
以只读方式打开文件?那么如何打开并更改它呢?
文件本身:
<!DOCTYPE html>
<html lang="en">
someText
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="css/style.min.css">
<title>Document</title>
</head>
<body class="wrapper">
<main class="page">
</main>
</div>
</body>
<script type="text/javascript" src="js/script.min.js"></script>
</html>
gulp-through2.obj
使用它拒绝启动的最新更新,试试这个: