前端工程化工具系列(十四)—— 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

相关推荐
剪刀石头布啊1 小时前
泛洪DFS、BFS
前端
qetfw1 小时前
Windows Server AD CS:根 CA、Web 证书模板与域内自动注册
前端·windows·windows-server
剪刀石头布啊1 小时前
为什么React组件很少前缀,而vue的不少组件都有前缀
前端
剪刀石头布啊1 小时前
gird网格布局
前端
啃火龙果的兔子1 小时前
Google Chrome(谷歌浏览器)常用快捷键
前端·chrome
剪刀石头布啊1 小时前
js真的是单线程实现异步并发么?
前端
剪刀石头布啊1 小时前
js中改变this指向的操作有哪些
前端
剪刀石头布啊1 小时前
vue、react 列表中使用 index 作为 key 的话,修改某一个元素后会发生什么
前端
方方洛2 小时前
glowglow:语言无关的语法高亮器是怎么实现的
前端·前端框架
java_nnnn2 小时前
JavaEE进阶-HTML基础认识
前端·java-ee·html