24_webpack_打包分析
一、打包时间的分析
如果我们希望看到每一个loader和plugin消耗的打包时间,可以借助于一个插件:speed-measure-webpakc-plugin
安装:npm i speed-measure-webpack-plugin -D
使用:
// 测量打包时间的插件
const SpeedMeasurePlugin = require("speed-measure-webpack-plugin");
const smp = new SpeedMeasurePlugin(); module.exports = function (env) {
isProduction = env.production;
process.env.NODE_ENV = isProduction ? "production" : "development";
return smp.wrap(
isProduction
? merge(commonConfig, prodConfig)
: merge(commonConfig, devConfig)
);
};
这个插件是有兼容性问题的
如 mini-css-extract-webpack-plugin
怎么解决这个问题?npm i mini-css-extract-webpack-plugin@1.3.6
那么再次npm run build 的时候就可以看到每个插件、loader耗时是多少
二、打包后文件分析
在package.json中的scripts中加入一个脚本
"stats":"webpack --config ./config/webpack.common.js --env production --profile --json=stats"
将打包后的文件生成一个档案,以json格式生成,名字叫stats
通过指向npm run stats可以得到一个stats.json的文件
但是单单阅读这个文件其中的信息并不是显而易见
可以放到:http://webpack.github.io/analyse,进行分析
或者使用webpack-bundle-analyzer
npm i webpack-bundle-analyzer -D
// 打包大小分析的插件
const { BundleAnalyzerPlugin } = require("webpack-bundle-analyzer"); plugins:[
new BundleAnalyzerPlugin()
]
当你npm run build 的时候,它会自动打开一个本地服务
24_webpack_打包分析的更多相关文章
- H264码流打包分析(精华)
H264码流打包分析 SODB 数据比特串-->最原始的编码数据 RBSP 原始字节序列载荷-->在SODB的后面填加了结尾比特(RBSP trailing bits 一个bit“1”)若 ...
- create-react-app 搭建的项目中,引入 webpack-bundle-analyzer 打包分析
安装npm intall webpack-bundle-analyzer --save-dev 在 config/webpack.config.prod.js 文件(推荐)或 config/webpa ...
- vue-cli、create-react-app 项目如何查看打包分析?
vue-cli.create-react-app 项目如何查看打包分析? 项目 如何查看打包分析 vue-cli 创建的项目 已经集成 webpack-bundle-analyzer,运行npm ru ...
- webpack之打包分析以及prefetching和preloading
打包分析: https://webpack.js.org/guides/code-splitting/#bundle-analysis 性能优化使用缓存是很有限的,现在更多的应该是再编写 ...
- RTP协议解析及H264/H265 音视频RTP打包分析
一 概述 实时传输协议(Real-time Transport Protocol或简写RTP)是一个网络传输协议,它是由IETF的多媒体传输工作小组1996年在RFC 1889中公布的. RTP协议详 ...
- H264码流打包分析
转自:http://www.360doc.com/content/13/0124/08/9008018_262076786.shtml SODB 数据比特串-->最原始的编码数据 RBSP ...
- Unity编译Android的原理解析和apk打包分析
作者介绍:张坤 最近由于想在Scene的脚本组件中,调用Android的Activity的相关接口,就需要弄明白Scene和Activity的实际对应关系,并对Unity调用Android的部分原理进 ...
- rn打包分析
rn打包原来是packager,后来独立出一个专门的打包工具metro,构建工具的大体思路跟前端构建工具差不多,都会有一个启动文件,然后根据模块依赖关系把对应文件找到. 开发中打包 在开发中打包,我们 ...
- maven项目打包分析及打包后war包缺少配置文件报错的原因分析,使用progard混淆时配置分析
1.maven打包: 一直以来我都没太注意过在myeclipse下使用run as来clean居然对项目的target目录没有进行操作,要让操作有效,需要进入到maven build...选项下,进行 ...
- vue-cli@webpack@4打包分析命令
一.命令 npm run build --report 该命令在打包完之后,可以分析包的大小(如下图),从而分析那一块打包太大了可以进行优化处理.
随机推荐
- C语言小程序-天天酷跑类游戏 26号完成
1.创建游戏内背景 2.实现人物 奔跑 跳跃 优化帧 3.障碍物 出现 https://kxd.lanzoul.com/iKXU20elmtah 开源地址 半成品
- 山石网科HCSA学习笔记
山石HCSA学习笔记 目录 山石HCSA学习笔记 1 山石防火墙基础知识 1.1 基础概念介绍 1.2 介绍StoneOS处理包的Flow过程? 2 系统管理 3 搭建实验环境 4 安全策略 5 NA ...
- Nacos集群搭建(三个节点)
Nacos集群安装 一,在每台服务器上安装nacos 1,准备安装包 github下载点 2,在/usr/local/目录下创建一个文件夹用于上传和解压Nacos cd /usr/local/ # ...
- js中Math.floor、Math.ceil、Math.round和parseInt小数取整小结
虽然知道结果都可以返回一个整数,但是四者的区别尤其是关于-0.5的取整情况貌似还是需要注意一下一.Math.floor(向下取整) 作用:返回小于等于参数的最大整数. eg: Math.floor(5 ...
- JZOJ 6664. 【2020.05.28省选模拟】最优化
\(\text{Solution}\) 原题:\(\text{Honorable Mention}\) 一个费用流做法,\(S\) 向 \(2i-1\) 连流量为 \(1\),费用为 \(0\) 的边 ...
- 初始化安装后 Nacos 动态路由配置不生效
一.问题描述 1.每次初始化安装整套项目,包括安装 Nacos 和其他服务还有mysql,redis等其他中间件,安装后 Nacos 获取不到 nacos 路由信息(包括后续新写入动态路由配置)!只有 ...
- LeetCode-2 两数相加题解
题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/add-two-numbers 题目描述 给你两个 非空 的链表,表示两个非负的整数.它们每位 ...
- 浏览器调试工具devtool
视频网址 先打开devtool,再打开命令菜单.可以用screenshot来截屏 $0:先在element点击元素,再在控制台输入$0,这个$0代表element中选中的DOM元素. $1,$2... ...
- 银河麒麟服务器V10-SP2安装tomcat
1.首先先去tomcat官网下载一个安装包 2.创建一个存放压缩包的文件夹,并考入文件 3.解压tomcat压缩包 命令: tar -xvf 压缩包名 4.启动tomcat 进入apache-tomc ...
- 13.OpenFeign测试远程调用
以会员服务调用优惠券服务为例 引入依赖 在之前创建微服务模块时已经引入了这个依赖,就不需要重复引入了 添加要被member微服务调用的coupon微服务的coupon的方法 在member微服务添加一 ...