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 相关文章推荐
原型方法的不同写法居然会影响调试的解决方法
Mar 08 Javascript
jquery更换文章内容与改变字体大小代码
Sep 30 Javascript
解决js下referer兼容各大浏览器的方法
Nov 03 Javascript
使用百度地图api实现根据地址查询经纬度
Dec 11 Javascript
基于JavaScript实现鼠标向下滑动加载div的代码
Aug 31 Javascript
Mac下使用charles遇到的问题以及解决办法
Jan 10 Javascript
Java中int与integer的区别(基本数据类型与引用数据类型)
Feb 19 Javascript
jQuery实现用户信息表格的添加和删除功能
Sep 12 jQuery
解决vue中使用swiper插件问题及swiper在vue中的用法
Apr 04 Javascript
Vue实现移动端页面切换效果【推荐】
Nov 13 Javascript
详解jQuery如何实现模糊搜索
May 10 jQuery
微信小程序实现发微博功能的示例代码
Jun 24 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
PHP转换文本框内容为HTML格式的方法
2016/07/20 PHP
详细解读php的命名空间(一)
2018/02/21 PHP
网上应用的一个不错common.js脚本
2007/08/08 Javascript
json 定义
2008/06/10 Javascript
Mootools 1.2教程 定时器和哈希简介
2009/09/15 Javascript
jQuery 获取对象 定位子对象
2010/05/31 Javascript
js动态修改整个页面样式达到换肤效果
2014/05/23 Javascript
windows下安装nodejs及框架express
2015/08/07 NodeJs
简单谈谈JavaScript的同步与异步
2015/12/31 Javascript
使用jquery提交form表单并自定义action的实现代码
2016/05/25 Javascript
AngularJS实现按钮提示与点击变色效果
2016/09/07 Javascript
BootStrap 下拉菜单点击之后不会出现下拉菜单(下拉菜单不弹出)的解决方案
2016/12/14 Javascript
js实现移动端编辑添加地址【模仿京东】
2017/04/28 Javascript
Angular数据绑定机制原理
2018/04/17 Javascript
JS实现二维数组横纵列转置的方法
2018/04/17 Javascript
微信小程序如何获取手机验证码
2018/11/04 Javascript
详解keep-alive + vuex 让缓存的页面灵活起来
2019/04/19 Javascript
深入了解js原型模式
2019/05/30 Javascript
Vue+penlayers实现多边形绘制及展示
2020/12/24 Vue.js
[03:48]大碗DOTA
2019/07/25 DOTA
用Python中的wxPython实现最基本的浏览器功能
2015/04/14 Python
python实现将汉字转换成汉语拼音的库
2015/05/05 Python
Python文件与文件夹常见基本操作总结
2016/09/19 Python
python utc datetime转换为时间戳的方法
2019/01/15 Python
Python中format()格式输出全解
2019/04/12 Python
python对Excel按条件进行内容补充(推荐)
2019/11/24 Python
python sklearn包——混淆矩阵、分类报告等自动生成方式
2020/02/28 Python
python爬虫学习笔记之pyquery模块基本用法详解
2020/04/09 Python
计算Python Numpy向量之间的欧氏距离实例
2020/05/22 Python
python绘制汉诺塔
2021/03/01 Python
建筑行业的大学生自我评价
2013/12/08 职场文书
警察思想汇报
2014/01/04 职场文书
甜美蛋糕店创业计划书
2014/01/30 职场文书
社区精神文明建设汇报材料
2014/08/17 职场文书
社区党建工作汇报材料
2014/10/27 职场文书
英语版自我评价,35句话轻松搞定
2019/10/08 职场文书