Webpack中有没有替换html静态资源的插件

发布于 2022-09-04 07:03:42 字数 442 浏览 9 评论 0

比如html文件中有如下代码

<div>
    <!-- /dev 是开发目录 -->
    <img src="/dev/img.png">
</div>

然后经过处理后变成如下

<div>
    <!-- /static 是上线目录, a7l3k2n是图片的hash -->
    <!-- 同时把img.png从/dev目录移动到/static目录 -->
    <img src="/static/img.a7l3k2n.png">
</div>

如果直接在JavaScript中引入图片文件是可以解决的,但总觉得引入资源的时候还要专门去写一串JS代码感觉很蛋疼。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

裸钻 2022-09-11 07:03:42

自己在webpack打包时的plugins中自定义一个插件批量替换即可。如果不知道怎么做,这有例子

桃酥萝莉 2022-09-11 07:03:42

html-webpack-plugin 可以向页面传递变量,根据开发环境和生产环境传递不同的路径即可。

// 省略其他 webpack 配置
plugins: [
    new HtmlWebpackPlugin({
      // 省略其他插件配置项
      projectPath: 'static'
    })
]

页面:

<img src="<%=htmlWebpackPlugin.options.projectPath%>/a.jpg" alt="">

输出:

clipboard.png

烟花易冷人易散 2022-09-11 07:03:42

你这种情况,只能是把html文件也交给webpack来管理了。

具体的思路是,利用html-webpack-plugin并传入页面模板来生成HTML文件,那么你就可以在页面模板中直接require图片了。

例子请看这里:《webpack多页应用架构系列(十二):利用webpack生成HTML普通网页&页面模板》

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文