前端工程化工具系列(十四)—— Webpack(v5.91.0):应用模块打包器与构建工具

Webpack 是用于现代 JavaScript 应用程序的静态模块打包器。

当 webpack 处理应用程序时,它会在内部构建一个依赖关系图,该图映射项目所需的每个模块最终会生成一个或多个包。

1 概念

1.1 modules

Webpack 中,无论是 JS 、CSS 还是图片等,总之一切皆模块。 有点像 RxJS,一切皆数据流。

模块间依赖的表述有很多种方式,如:import,require,define,@import,url(...), <img src=...> 等等。

1.2 Entry & Output

入口指示 webpack 应该使用哪个模块开始构建其内部依赖关系图。默认为: ./src/index.js。

出口告诉 webpack 在何处发出它创建的包文件以及如何命名这些文件。默认为: ./dist/main.js

1.3 Loaders

Webpack 默认只能解析 JavaScript 和 JSON,可以通过添加 loaders 来处理其他类型的文件。

1.4 Plugins

可以利用插件来执行更广泛的任务,例如打包优化,资产管理和环境变量的注入。

1.5 Mode

分 development、production、none 三种,每种都会对应一系列默认配置。

2 安装

bash 复制代码
pnpm i -D webpack webpack-cli

使用 web 服务器做调试和热更新,则需安装:

bash 复制代码
npm add -D webpack-dev-server

添加各种 loader

bash 复制代码
npm add -D babel-loader sass-loader sass postcss-loader css-loader style-loader

3 配置

3.1 针对 JavaScript

(待补充)

3.2 针对 TypeScript

相关推荐
不吃糖葫芦36 分钟前
vue3实现拓扑图编辑功能(谨以此纪念我当前的最后一份前端工作)
前端
大家的林语冰14 分钟前
超越 TypeScript,Flow 强势回归,语法高仿 TS,功能更丰富,类型更安全!
前端·javascript·typescript
shimly12345620 分钟前
RUST Arc
rust
এ慕ོ冬℘゜33 分钟前
jQuery 高可用多图上传组件(企业级封装 + 踩坑全解 + 可直接上线)
前端·javascript·jquery
爱勇宝39 分钟前
AI 时代,前端工程师的话语权正在下降?
前端·后端
kymjs张涛39 分钟前
一个月,纯VibeCoding,全平台云笔记APP
前端·javascript·后端
巴勒个啦1 小时前
esbuild 插件实战:5个真实场景带你自定义构建流水线
前端·angular.js
狗头大军之江苏分军1 小时前
前端路由是怎么来的
前端·javascript·后端
Patrick_Wilson1 小时前
Cookie 作用域避坑:父域泄漏、同名优先级与多环境隔离
前端·http·浏览器