html-webpack-plugin 模板变量替换怎么做双重替换?

作者站长头像
站长
· 阅读数 15

如下例子,期望替换 html 中 type 的内容,该如何设置呢?

如下test.html内容:

<head>
    <title></title>
</head>
<body>
    <script>
        window.type = '<%="<"%>%type%<%=">"%>';
        window.buildTime = <%= buildTime %>;
    </script>
</body>
</html>

webpack相关的配置如下:

new HtmlWebpackPlugin({
    template: 'test.html',
    templateParameters: {
        buildTimestamp: Number(new Date())
    }
})
回复
1个回答
avatar
test
2024-07-20

templateContent 代替 templatetemplateParameters。先用正则替换完变量再通过 templateContent 传给插件。

new HtmlWebpackPlugin({
    templateContent: fs.readFileSync('test.html', 'utf-8')
    // templateContent: () => fs.readFileSync('test.html', 'utf-8')
})
回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容