webpack4 坑收集:html-webpack-plugin在多页面时,无法将optimization.splitChunks提取的公共块,打包到页面中
问题描述:
有2个页面index.html和product.html,用html-webpack-plugin和optimization.splitChunks的基本配置如下
{
      template: 'src/html/' + name + '.html',
      filename:  (devMode ? '' : '../') + 'html/' + name + '.html',
      chunks: ['common','jquery','index']
 }
{
      template: 'src/html/' + name + '.html',
      filename:  (devMode ? '' : '../') + 'html/' + name + '.html',
      chunks: ['common','jquery','product']
 }
optimization: {
      splitChunks: {
         chunks: 'all',
         minSize: 30000,
         minChunks: 1,
         cacheGroups: {
            vendor: {
               test: /node_modules/, // 用于规定缓存组匹配的文件位置
               name: 'vendor',
               minSize: 30000,
               priority: -10,//优先级
            }
         }
      }
   }
build后:index.html 页面并未引入index和product页面的公共块(index~product-795ac51aef2e85e2ec28.js?),导致页面不能正常加载
<script src="../js/common-795ac51aef2e85e2ec28.js?795ac51aef2e85e2ec28"></script>
<script src="../js/jquery-795ac51aef2e85e2ec28.js?795ac51aef2e85e2ec28"></script>
<script src="../js/index-795ac51aef2e85e2ec28.js?795ac51aef2e85e2ec28"></script>
解决办法:在html-webpack-plugin的bata版已经修复,请重新安装
npm install --save-dev html-webpack-plugin@next
然后,重新build,查看index.html 页面
<script src="../js/common-795ac51aef2e85e2ec28.js?795ac51aef2e85e2ec28"></script>
<script src="../js/jquery-795ac51aef2e85e2ec28.js?795ac51aef2e85e2ec28"></script>
<script src="../js/index~product-795ac51aef2e85e2ec28.js?795ac51aef2e85e2ec28"></script>
<script src="../js/index-795ac51aef2e85e2ec28.js?795ac51aef2e85e2ec28"></script>
页面已经自动引入公共模板,这个坑解决,我只想说:继续采坑
webpack4 坑收集:html-webpack-plugin在多页面时,无法将optimization.splitChunks提取的公共块,打包到页面中的更多相关文章
- Vue发布过程中遇到坑,以及webpack打包优化
		
前言 这段时间,本人自己做了一个vue画面部署到自己的服务器上,发现运行速度慢的的惊人,虽然服务器很渣(本人没什么钱,只能租最差的服务器,主要是给自己学习用的),但是这样开发出来的网站简直不能用,所以 ...
 - 如何开发webpack plugin
		
继上回介绍了如何开发webpack loader 之后.趁热打铁,来继续看下webpack另一个核心组成:plugin. 下面也和loader一样,让我们一起从基本的官方文档着手看起. loader和 ...
 - 简单webpack plugin 开发
		
重要是学习下怎么开发webpack plugin,同时记录下 插件模型 webpack 是一个插件,可以是javascript class ,或者具名 class 定义apply 方法 指定一个绑定到 ...
 - Webpack Plugin
		
[Webpack Plugin] Since Loaders only execute transforms on a per-file basis, plugins are most commonl ...
 - 案例实战之如何写一个webpack plugin
		
案例实战之如何写一个webpack plugin 1.写一个生成打包文件目录的file.md文件 // 生成一个目录项目目录的文件夹 class FileListPlugin { constructo ...
 - 揭秘webpack plugin
		
前言 Plugin(插件) 是 webpack 生态的的一个关键部分.它为社区提供了一种强大的方法来扩展 webpack 和开发 webpack 的编译过程.这篇文章将尝试探索 webpack plu ...
 - YYDS: Webpack Plugin开发
		
目录 导读 一.cdn常规使用 二.开发一个webpack plugin 三.cdn优化插件实现 1.创建一个具名 JavaScript 函数(使用ES6的class实现) 2.在它的原型上定义 ap ...
 - 优化单页面开发环境:webpack与react的运行时打包与热更新
		
前面两篇文章介绍初步搭建单页面应用的开发环境: 第一篇:使用webpack.babel.react.antdesign配置单页面应用开发环境 第二篇:使用react-router实现单页面应用路由 这 ...
 - 注意Android里TextView控件的一个小坑,用android:theme来设置样式时动态载入的layout会丢失该样式
		
注意Android里TextView控件的一个小坑,用android:theme来设置样式时动态载入的layout会丢失该样式 这个坑,必须要注意呀, 比如在用ListView的时候,如果在List_ ...
 
随机推荐
- jdk的安装过程
			
一.安装软件 jdk的安装:现在已经更新到11版本,这里下载的是8版本的(官网也只支持8和11的下载) 1.下载jdk网址:https://www.oracle.com/technetwork/jav ...
 - HTML入门5
			
格式化文本,高阶处理,接下来了解,标记引文,描述列表,计算机代码和其他文本,上下标,联系信息等数据. 学习不太知名的HTML元素来标记高级语义特征. 描述列表,也叫自定义列表,第三种类型的列表,除了u ...
 - CSS3_3D 变换
			
3D 变换 1. 在 2D 父元素中,绕轴旋转,效果需要想象 #ele_3d { width: transform: rotateX(2deg); } rotateX 为正,元素左上角往里跑...对象 ...
 - React 面向组件化编程 - 封装了webpack - npm run build 产生的包的 /static 引用路径问题
			
React 面向组件化编程 面向对象 ----> 面向模块 ----> 面向组件 套路: 注意: 组件名必须大写开头: 只能有一个根标签: <input />虚拟DOM 元素必 ...
 - pytorch入门与实践-3 Tensor详解
			
1--如第二章所讲,Tensor的本质是矩阵或数据 2--对Tensor的操作分类 |----API分类 |------torch中定义的: t.f(a,b) |------tensor的成员函数: ...
 - linux权限字母的含义
			
无 --- 只能列出文件 r-- 访问文件 r-x 创建和删除文件 rwx
 - 添加一个Button按钮
			
#增加一个Button 1. 在layout下的xml中添加 <Button android:id="@+id/button1" android:layout_width=& ...
 - mysql查询两个日期之前相隔的天数
			
select timestampdiff(SECOND,'2011-09-25 23:23:13','2011-09-26 22:23:11'); 其中SECOND同样可以改为HOUR,MINUTE
 - pwn学习日记Day3 基础知识积累
			
知识杂项 msfVENOM:Msfvenom是msf框架配套的攻击载荷生成器. payload:有效载荷. payload:目标系统上渗透成功后执行的代码. Metasploit:一款开源的安全漏洞检 ...
 - Oracle安装和配置Oracle数据库快速指南
			
Oracle安装12C要求参考文档 汇总 中文版:在 Unix AIX,HP-UX,Linux,Solaris 和 MS Windows 操作系统上安装和配置 Oracle 数据库(RDBMS)的要求 ...