一张图让你快速明白webpack打包到底在做什么

本文通过图解方式清晰地介绍了webpack打包的三个主要过程:1. 使用loader按文件类型处理源码,如ts转js,sass/less转css;2. plugin进一步优化代码,如js压缩,css压缩,资源文件拷贝;3. 打包成bundle.js并添加到index.html。配置webpack关键在于选择合适的loader和plugin,并根据环境配置环境变量。
摘要由CSDN通过智能技术生成

很多朋友跟我说webpack配置很难,想要我讲讲webpack打包到底是做了什么事情,应该如何配置?本文用最清晰的图示向大家介绍。

在这里插入图片描述

webpack打包可以简要说经过3个过程。

第一个过程是通过loader把文件导入,也就是在源代码写的 import xxx from xxx, webpack一般根据文件的扩展名分类,用不同的loader对文件进行处理。

  1. ts / tsx这样的源文件,就要通过babel-loader 或 awesome-typescript-loader 编译成浏览器能识别的js代码
  2. sass / less 通过sass-loader / less-loader 解析成css代码
  3. 资源文件则是通过file-loader改名,改名最大的目的就是重新打包的时候换个名字,清除浏览器的缓存。

第二个过程则是通过plugin再次处理第一步生成的代码脚本。

  1. js文件需要被压缩,最后编译到代码中,注意这个步骤在webpack中是production模式是默认的,所以不需要像示意图那样配置。
  2. css再次通过optimize-css-assets-webpack-plugin压缩,去掉一些换行和空格。
  3. 资源文件通过copy-webpack-plugin拷贝到目标目录中,这个目录一般可以叫做 assets 或者是 static / content 之类的名字。

最终第三个过程,webpack会把压缩好的js/css最终打包成一个或多个 bundle.js 文件,将引用添加到index.html中,打包完成。

配置webpack的要点就在于你是如何构架和对技术选型,比如选了less作为样式编写语言,则要配置好less-loader,使用了typescript则要配置好ts的载入loader。此为,正式的项目还必须关注不同生产阶段的环境变量,要使用define-plugin对不同环境进行配置。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值