Webpack使用指南 | 青训营笔记

37 阅读2分钟

这是我参与「第五届青训营 」笔记创作活动的第12天

本节课将重点围绕「构建 Webpack 知识体系」这一核心话题展开。在正式学习 Webpack 之前,本节课将解读为什么需要学习 Webpack ,Webpack 的本质是什么以及 Webpack 技术优势等相关知识。

第一部分

  1. Webpack 的本质
  2. Webpack 定义解析
  3. Webpack 优势

在介绍完 Webpack 是什么之后,本节课将主要带来 Webpack 的使用方法,帮助同学从理论到实践,能够通过代码展示与案例讲解,了解关于 Webpack 的具体使用方法

第二部分

  1. 流程类配置
  2. 处理 CSS
  3. 接入 Bable
  4. 生成 HTML
  5. 使用 Webpack - 工具线

一个前端项目是由 CSS 样式文件、图片文件、JS 文件、Vue 文件、TS 文件、JSX 文件等部分组成。我们可以手动管理这些资源:

  • 如果资源文件过多,手工操作流程繁琐。
  • 当文件之间有依赖关系时,必须严格按依赖顺序书写。
  • 开发与生产环境需要一致,难以接入 JS 和 TS 的新特性。
  • 比较难接入 Less、Sass 等。
  • JS、图片、CSS 资源管理模型不一致。

2009年诞生的 Node.js 和2010年诞生的 npm 将前端项目带入了工程化,而 Node.js 的 CommonJS 模块化规范不兼容浏览器。所以相继出现了一些打包工具,比如 Browserify、Gulp、RequireJS、Rollup、Webpack 等。

Webpack 本质上是一种前端资源译、打包工具。

  • 多份资源文件打包成一个 Bundle,减少 http 请求数
  • 支持 Babel、Eslint、TS、CoffeScript、Less、Sass
  • 支持模块化处理 CSS、图片等资源文件
  • 统一图片、CSS、字体等其它资源的处理模型
  • 支持 HMR + 开发服务器
  • 支持持续监听、持续构建
  • 支持代码分离支持 Tree-shaking
  • 支持 SourceMap

使用

关于Webpack的使用方法也比较简单,主要在于配置,分两部分:流程类以及工具类。

流程类:输入、模块解析、模块转译、后处理、输出。

工具类:开发效率类、性能优化类、日志类。