2021-03-10

作业

webpack 构建流程有哪些环节?

  • 初始化参数:webpack会根据命令行输入,webpack.config.js. 以及必要的默认配置。而成最后配置
  • 开始编译:根据配置的最终结果会得到一个compiler对象,注册所有的插件。开始监听webpack。
  • 确定入口:根据webpack.config.js 文件的entry 入口,开始解析文件构建AST语法树,找出依赖,递。下去
  • 编译模块:递归过程中,根据文件类型和loader配置,调用相应的loader对不同的文件做不同的转换处理,在找出该模块,然后递归本步骤。知道所有模块都经过了本步骤的编译处理。
  • 编译过程中,有一系列的插件在不同在不同的环境做相应的事情。
  • 完成编译并输出:递归结束后,得到每个文件结果,包含转换后的模块以及他们之间的依赖关系,根据entry以及outPut等配置成代码块chunk
  • 打包完成:根据output 输出多有的chunk到相应目录。

loader和plugin有哪些不同?请描述一下开发loader和plugin的思路

  • loader直译为加载器。主要用来解析和检测对应资源文件。一般负责文件的输入到输出。一般用于资源加载。文件处理等等
  • Plugin为插件 主要通过webpack钩子机制实现。负责在webpack的不同阶段执行一些额外的操作。她的 插件是一个函数或者包含epply方法的对象。接受一个compiler对象。通过webpackd额钩子机制在某一阶段执行相应的流程
  • loader 是通过模块导出的一个函数 默认接受一个souce 即将处理的资源 在函数体内处理资源。return 返回输出
  • plugin 是通过钩子实现 插件必须是一个函数或者包含apply方法的对象。通过webpackAPI对资源做处理
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值