webpack htmlWebpackPlugin问题
本文介绍了webpack htmlWebpackPlugin问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
使用webpack中的htmlWebpackPlugin进行打包,通过自定义Html末班生成页面,可是htmlWebpackPlugin.files
生成的页面js文件竟然是双份的。
webpack HtmlWebpackPlugin配置
new HtmlWebpackPlugin({
title: 'TypeScript Demo',
template: './src/index.html'
})
html 模板
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>
<%= htmlWebpackPlugin.options.title %>
</title>
<% for (var css in htmlWebpackPlugin.files.css) { %>
<link href="<%=htmlWebpackPlugin.files.css[css] %>" rel="stylesheet">
<% } %>
</head>
<body>
<% for (var chunk in htmlWebpackPlugin.files.chunks) { %>
<script type="text/javascript" src="<%=htmlWebpackPlugin.files.chunks[chunk].entry %>"></script>
<% } %>
</body>
</html>
渲染的结果
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>
TypeScript Demo
</title>
</head>
<body>
<script type="text/javascript" src="http://127.0.0.1:20006/dist_web/vendor.0c5d63af356a9e7241e3.min.js"></script>
<script type="text/javascript" src="http://127.0.0.1:20006/dist_web/module.0c5d63af356a9e7241e3.js"></script>
<script type="text/javascript" src="http://127.0.0.1:20006/dist_web/vendor.0c5d63af356a9e7241e3.min.js"></script><script type="text/javascript" src="http://127.0.0.1:20006/dist_web/module.0c5d63af356a9e7241e3.js"></script></body>
</html>
解决方案
<% for (var chunk in htmlWebpackPlugin.files.chunks) { %>
<script type="text/javascript" src="<%=htmlWebpackPlugin.files.chunks[chunk].entry %>"></script>
<% } %>
把这一段去掉,多余了。
如果非要留着上面的这段,可以设置这个字段 inject
:
new HtmlWebpackPlugin({
title: 'TypeScript Demo',
inject: false,
template: './src/index.html'
})
这篇关于webpack htmlWebpackPlugin问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文