看源码的一点方法论
看 webpack 源码总结的一点方法论
用到的工具
- WebStorm
- Collapse All 功能
- Go To Declaration or Usages 功能
- Back 功能
- Forward 功能
- 按两下 Shift 搜索功能名
- 可获悉快捷键
- VSCode
- Fold All 功能
- Go To Definition 功能
- Go Back 功能
- Go Forward 功能
- 按 Ctrl+Shift+P 搜索功能名
- 可获悉快捷键
准备代码
- 使用 webpack
- 创建一个 demo 项目,用来调试 webpack 和 webpack-cli
- 运行 webpack-cli 将 src/index.js 打包为 dist/main.js
- 下载 webpack
- 从 GitHub 下载 webpack 的源码,切换至 v5.10.1
- 从 GitHub 下载 webpack-cli 的源码,切换至 webpack-cli@4.2.0
- 用 IDE 的 3 个窗口分别打开这 3 个项目
如何调试
- 思路
- webpack-cli 默认会执行 node_modules 里的 JS 代码
- 我们可以篡改 node_modules 里的源码
- 我们也可以用 npm link 替换 node_modules 里的目录
- 步骤
- 在 webpack 项目根目录里运行 npm link
- 在 webpack-cli 项目子目录里运行 npm link
- 在 demo 项目根目录里运行 npm link webpack webpack-cli
开始阅读源代码
一定要带着问题去看源码,不然你会跑偏最终放弃
中间过程遇到新的问题记录下来下此再来看
只看核心代码,比如
if
块,require
块,声明块,直接return
的代码都可以不看流程代码比较冗长的可以把关键步骤记录下来,到后面就可以串起来
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment