Webpack 工作原理

116 阅读1分钟

一. 我们 need 打包工具做什么?

2227.png

注意:

2228.png

二. webpack 的基本使用

  • 先安装

2229.png

  • 快捷命令配置 npm build

2230.png

  • webpack.config.js 文件的配置

该文件是运行在node环境下的js文件,所以需要用 CommonJs的规范去写代码。使用 module.exports = {} 的语法

2231.png

<1> 加载器 loader 的成分 【专注于资源模块加载】

webpack 核心就是依靠 loader 实现对不同类型的资源模块进行编译的。 不管什么类型的资源,最后都会使用相应的 loader 转化为成 js 文件。

2232.png

工作原理就是: webpack 会从入口文件开始解析代码,根据其中引入的外部资源,生成文件资源依赖树(如下),然后递归遍历该树,对不同类型的资源,调用相应的 loader 来进行代码转译【都转为 js 类型的代码】 。最终生成 js 文件

文件资源依赖树:

2247.png

加载外部资源的方式:

2248.png

<2> 插件 plugin 的成分 【增强 webpack 自动化的能力】

plugin 主要是对 webpack 能力的增强,实现一些自动化的操作,eg:自动在打包之前清除 dist 目录(上一次打包的结果)、压缩输出代码。webpack 有了 plugin 的buff加持,就可以基本实现前端工程化!!