0

我第一次运行 gulp 时它会改变让我们说 cb=123 到 cb=1607263938392 (这是新的 Date().getTime())但之后即使我手动运行 gulp 运行它一百次,它也不会改变。如果我删除几个数字,它将再次替换字符串。我注意到当数字正好是 13 时,它不会替换它们。我不用手表手动运行它。

const { src, series, parallel, dest, watch } = require('gulp');
const replace = require('gulp-replace');

function replaceHtml() {
    var cbString = 'cb='+new Date().getTime();
    
    return src(["index.html"])
      .pipe(replace(/cb=\d+/g, function() {
        return cbString;
      }))
      .pipe(dest("."));
  }

exports.default = replaceHtml;
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="style.css?cb=1607263938392">
</head>
<body>
</body>
</html>

4

1 回答 1

0

好的,我终于发现问题是vscode没有更新文件。仅当字符少于或多于文件中的字符时,它才会更新。顺便说一句,我在 linux 上使用 vscode 1.51.1(debian 版本)。我做了一个 cat index.html 并显示该文件正在更改。这真的让我发疯了!!!非常感谢你的回复马克

于 2020-12-07T11:02:19.730 回答