Webpack 源码学习系列(一)

学习源码,在于了解整体结构,对整个机制有一个整体了了解,做到心里有数,而不是看别人怎么用就怎么用,不报错就行。

获取源码

首先,先到github中获取源码。

git clone https://github.com/webpack/webpack.git

寻找入口

获取到源码以后,首先要找到入口。

webpack是一个npm包,所以可以在package.json中找到对应的入口,即:"main": "lib/webpack.js",

webpack.js解读

webpack.js里只有两个成员webpack(options, callback) exportPlugins(obj, mappings)

webpack函数的作用

  1. 检查options
    clipboard.png
  2. 检查是否是MultiCompiler的情况(貌似还没用过,先不管)
  3. 实例一个WebpackOptionsDefaulter对象,并调用processoptions初始化默认属性
  4. 创建一个compiler,并初始化Pliugins,如果有callback就调用,然后返回。
    clipboard.png
  5. 在这中间还调用了NodeEnvironmentPlugin做了一些Node环境的设置(暂时不管)

exportPlugins的作用

从下图中可以看出,这是用来导出默认实现的Plugins的,暂时可以不用管,后续可以查看导出了什么插件。

clipboard.png

总结

这一章只是简单的看了一下入口文件进行一个简单的了解。

本章内容内容:

  • webpack入口
  • lib/webpack.js的主要内容

下一章内容

  • compiler对象
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值