Skip to content

notes

入口配置

  • 单入口
  • 多入口
  • 对象形式

输出配置

  • 输出位置:path
  • 输出文件名:filename
  • 输出chunk: chunkFileName
  • 清除clean
  • 环境配置:environment:arrowFunction、asyncFunction

为了浏览器每次应用发布后,第一次不走缓存,会将文件打包时,输出文件名加hash

模块解析

针对不同类型的文件,需要转换处理

  • js -> babel-loader
  • ts -> ts-loader
  • image -> raw-loader url-loader
  • font -> raw-loader
  • css -> css-loader style-loader
  • scss -> sass-loader
  • less -> less-loader
  • file -> raw-loader

浏览器原生支持ES Modules,所以vite打包更快

辅助解析 (resolve)

  • extensions:导入模块时,可以省略文件后缀

自定义 loader

loader本质上是一个函数,它的作用是将模块的原始内容转换为新的内容。

自定义 plugin

plugin本质上是一个类,它的作用是在webpack打包的生命周期中,插入自定义的逻辑。