webpack 与 code splitting

博客介绍了代码分割(code splitting),以 lodash 包为例,先展示未进行代码分割时,业务代码与工具库代码都打包进 main.js,导致文件大、加载时间长等问题。接着说明解决办法,将 lodash 引入放在新文件,配置 webpack 新增入口文件,使逻辑与工具库代码打包进两个文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

code splitting 即代码分割。那么什么是代码分割。

我们举个例子。

我们先下载一个包lodash,使用命令 npm install lodash --save 。lodash 是一个功能集合,提供了很多功能方法。

先在src 目录下 index.js 中写下面的代码,如下是index.js 中的内容。

import _ from 'lodash';

console.log(_.join(["a","b","c"]));

然后,打包 npm run bundle 。

打包好后,我们可以去浏览器运行一下html .是可以的。

我们可以打开代码 打包的 main.js 。我们将业务代码与工具库代码都打包进来main.js  中了,因此这个文件特别的大。【浏览器是可以并行加载文件的,同时加载两个中文件一般来说比加载一个大文件是要快的】

当我们业务代码特别多,工具库的代码当然也是很多的时候。

会有几个问题:

- 打包文件会很大,加载时间会很长

-如果用户重新访问页面,又要加载一个很大的文件(业务逻辑代码会变,工具库很少变)

那么我们可以这样解决:首先将index.js 中关于lodash 的引入放在另一个文件中,src下新建一个文件 lodash.js,代码如下。

import _ from 'lodash';

window._ = _;

然后,我们再做一个页面的配置。打开webpack.common.js

新增一个入口文件如下。

module.exports = {
	entry: {
		lodash: "./src/lodash.js",
		main: "./src/index.js"
	},
...
}

保存,然后打包 npm run bundle 。打包完成后就可以使用了。此时会发现,逻辑代码与lodash 代码被打包进了两个文件里,html 里引入了这两个文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值