webpack实践之DLLPlugin 和 DLLReferencePlugin的使用教程


Posted in Javascript onJune 10, 2019

DLLPlugin 和 DLLReferencePlugin的使用

DLLPlugin 和 DLLReferencePlugin 用某种方法实现了拆分 bundles,同时还大大提升了构建的速度。

1.首先build文件夹添加----webpack.dll.config.js:

var path = require("path");
var webpack = require("webpack");
module.exports = {
 // 要打包的模块的数组
 entry: {
  vendor: ['vue/dist/vue.esm.js','vue-router']
 },
 output: {
  path: path.join(__dirname, '../static/js'), // 打包后文件输出的位置
  filename: '[name].dll.js',// vendor.dll.js中暴露出的全局变量名。
  library: '[name]_library' // 与webpack.DllPlugin中的`name: '[name]_library',`保持一致。
 },
 plugins: [
  new webpack.DllPlugin({
   path: path.join(__dirname, '.', '[name]-manifest.json'),
   name: '[name]_library', 
   context: __dirname
  }),
 ]
};

2.在package.json的scripts里加上:

"dll": "webpack --config build/webpack.dll.config.js",

3.运行npm run dll 在static/js下生成vendor-manifest.json;

 4.在build/webpack.base.conf.js里加上:

// 添加DllReferencePlugin插件
 plugins: [
  new webpack.DllReferencePlugin({
   context: __dirname,
   manifest: require('./vendor-manifest.json')
  })
 ],

5.然后在index.html中引入vendor.dll.js:

<div id="app"></div>
<script src="./static/js/vendor.dll.js"></script>

至此,配置之后的:

 可以看到npm run build后的时间大幅度减少,在dist打包体积上也比之前的小。在项目优化中,可以很大程度上加快项目的构建速度和减少项目的打包体积。

总结

以上所述是小编给大家介绍的webpack实践之DLLPlugin 和 DLLReferencePlugin的使用教程,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
JavaScript 语法集锦 脚本之家基础推荐
Nov 15 Javascript
javascript showModalDialog 多层模态窗口实现页面提交及刷新的代码
Nov 28 Javascript
Function.prototype.call.apply结合用法分析示例
Jul 03 Javascript
使用JavaScript链式编程实现模拟Jquery函数
Dec 21 Javascript
jQuery解析XML文件同时动态增加js文件的方法
Jun 01 Javascript
简介JavaScript中的sub()方法的使用
Jun 08 Javascript
深入浅析JavaScript字符串操作方法 slice、substr、substring及其IE兼容性
Dec 16 Javascript
Javascript ES6中数据类型Symbol的使用详解
May 02 Javascript
带你了解session和cookie作用原理区别和用法
Aug 14 Javascript
策略模式实现 Vue 动态表单验证的方法
Sep 16 Javascript
Vue中Object.assign清空数据报错的解决方案
Mar 03 Vue.js
JS前端可视化canvas动画原理及其推导实现
Aug 05 Javascript
vue2 中二级路由高亮问题及配置方法
Jun 10 #Javascript
JS中实现一个下载进度条及播放进度条的代码
Jun 10 #Javascript
vuex 中插件的编写案例解析
Jun 10 #Javascript
使用webpack搭建vue项目及注意事项
Jun 10 #Javascript
详解iview的checkbox多选框全选时校验问题
Jun 10 #Javascript
前端路由&amp;webpack基础配置详解
Jun 10 #Javascript
在Vue中用canvas实现二维码和图片合成海报的方法
Jun 10 #Javascript
You might like
在任意字符集下正常显示网页的方法一
2007/04/01 PHP
shopex主机报错误请求解决方案(No such file or directory)
2011/12/27 PHP
php在apache环境下实现gzip配置方法
2015/04/02 PHP
浅谈PHP中try{}catch{}的使用方法
2016/12/09 PHP
EasyUI,点击开启编辑框,并且编辑框获得焦点的方法
2015/03/01 Javascript
多个js毫秒倒计时同时进行效果
2016/01/05 Javascript
JS模拟简易滚动条效果代码(附demo源码)
2016/04/05 Javascript
判断横屏竖屏(三种)
2017/02/13 Javascript
jQuery序列化后的表单值转换成Json
2017/06/16 jQuery
vue-cli如何添加less 以及sass
2017/07/06 Javascript
解读vue生成的文件目录结构及说明
2017/11/27 Javascript
浅谈JavaScript_DOM学习篇_图片切换小案例
2019/03/19 Javascript
详解JavaScript的内存空间、赋值和深浅拷贝
2019/04/17 Javascript
详解基于Wepy开发小程序插件(推荐)
2019/08/01 Javascript
Python使用Beautiful Soup包编写爬虫时的一些关键点
2016/01/20 Python
Python 常用string函数详解
2016/05/30 Python
浅谈Python中chr、unichr、ord字符函数之间的对比
2016/06/16 Python
python定时利用QQ邮件发送天气预报的实例
2017/11/17 Python
python实现TF-IDF算法解析
2018/01/02 Python
numpy判断数值类型、过滤出数值型数据的方法
2018/06/09 Python
tensorflow 获取变量&amp;打印权值的实例讲解
2018/06/14 Python
django+mysql的使用示例
2018/11/23 Python
CSS3+JavaScript实现炫酷呼吸效果的示例代码
2020/06/15 HTML / CSS
IE支持HTML5的解决方法
2009/10/20 HTML / CSS
英文简历中的自我评价
2013/10/06 职场文书
名企HR怎样看待求职信
2014/02/23 职场文书
小城镇建设汇报材料
2014/08/16 职场文书
2014年教师节讲话稿5篇
2014/09/10 职场文书
小班上学期幼儿评语
2014/12/30 职场文书
餐饮服务员岗位职责
2015/02/09 职场文书
2015年大学生社会实践评语
2015/03/26 职场文书
物流业务员岗位职责
2015/04/03 职场文书
阿甘正传观后感
2015/06/01 职场文书
体育教师教学随笔
2015/08/15 职场文书
导游词之南京中山陵
2019/11/27 职场文书
oracle通过存储过程上传list保存功能
2021/05/12 Oracle