webpack 如何实现提取.html 文件中的 script 和 style 标签? 并使用其他 loader 处理后生成文件地址?

2020-11-26 10:18:17 +08:00
 woshiyigexiaohao

有个需求是需要把.html 内的所有 script 标签 script:not([src]) 和 style 标签 使用对应的 loader 进行处理并将其变为文件引用形式.

script 标签不同于 vue 可能存在 html 文件任何位置,可能需要经过 parse 处理.

类似 Vue-loader

1843 次点击
所在节点    JavaScript
7 条回复
woshiyigexiaohao
2020-11-26 10:24:56 +08:00
有啥思路嘛
Torpedo
2020-11-26 10:28:52 +08:00
@woshiyigexiaohao https://github.com/jantimon/html-webpack-plugin#configuration 可以把 html 当做模板,注入变量,拼最后生成的 html
woshiyigexiaohao
2020-11-26 10:36:29 +08:00
@Torpedo plugins 晚于 loader 执行,如何在 plugin 中对文件运行 loader
yaphets666
2020-11-26 10:57:45 +08:00
原理嘛那肯定是正则匹配了,vue-loader 也是正则.
Torpedo
2020-11-26 11:14:21 +08:00
@woshiyigexiaohao 那就先写个解析 html 的 loader,把剩余的扔给后面的 js,styleloader 啥的。不知道 html-loader 行不
KuroNekoFan
2020-11-26 11:35:46 +08:00
xpath 吧
auroraccc
2020-11-26 12:11:13 +08:00
找个 parse html 的库然后过 loader 拿到处理后的文件地址再替换就好了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/729352

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX