Webpack 快速启动模板

webpack启动器

该开源项目是一个 Webpack 快速启动模板。是预先配置的解决方案,旨在加速开发流程。它为 JavaScript 应用及 Web 资源提供模块化打包,使之适应浏览器环境。借助这样的模板,开发者能够立即投身项目核心功能的构建,无需从零配置构建工具链。

开源地址:https://gitee.com/xkpro/ke-starter

视频演示:https://www.bilibili.com/video/BV1U48ue3Egx/

快速开始

使用启动模板之前,请确保已安装 gitNode.jsYarn 包管理工具 。

  1. 拉取项目到本地
git clone https://gitee.com/xkpro/ke-starter.git
  1. 安装依赖
yarn
  1. 运行项目 (开发环境)
yarn start

完成上述步骤后,项目就已经启动并运行在本地开发环境中,可以开始愉快地编码和调试了。

打包

打包分发项目 (生产环境)

yarn build

项目依赖

  • webpack:是一个流行的前端资源模块打包器,它主要用于 JavaScript 应用程序,但也可以转换、打包其他类型的文件如 CSS、图片等。

  • webpack-cli:是一个命令行接口,它是与 Webpack 一起使用的工具,允许开发者通过命令行来运行 Webpack 的构建、服务启动等任务,简化了配置和执行过程。

  • webpack-dev-server:是一个小型的开发服务器,它不仅提供了实时重新加载的功能,还能够简化静态资源的托管,让开发者可以快速预览项目。

  • @babel/core: 是一个 JavaScript 转译器的核心模块,它是 Babel 的一部分。Babel 是一个广泛使用的工具,它允许你使用最新的 ECMAScript 特性编写代码,并将其转换为当前浏览器或环境支持的 JavaScript 版本,从而实现向后兼容。

  • @babel/preset-env: 这是一个预设( preset ),包含了将 ES6+代码转换为广泛支持的 ES5 代码所需的一系列插件。

  • babel-loader: 是一个用于 Webpack 的加载器(loader),它允许你在 Webpack 构建过程中使用 Babel 来转换 JavaScript 文件。Webpack 是一个流行的模块打包器,它能够处理各种模块和资源,把它们打包成一个或多个优化过的 bundles,以便于在浏览器或其他环境中运行。

  • copy-webpack-plugin:是一个 Webpack 插件,它的主要功能是在构建过程中复制文件或整个目录到构建目录(通常是 dist 目录)中。这对于处理静态资源,如图片、字体文件、HTML 模板或其他不需要经过 Webpack 模块转换的文件非常有用。

  • css-loader: 是一个 webpack 加载器,它主要用于在 webpack 构建过程中处理 CSS 文件。这个加载器使得 webpack 能够理解 importrequire 语句中导入的 CSS 文件,并将其作为模块来处理。这意味着你可以像导入 JavaScript 模块一样导入 CSS 文件,并且可以利用 webpack 的模块化能力,如代码拆分、热模块替换等。

  • css-minimizer-webpack-plugin: 是一个 webpack 插件,用于在 webpack 构建流程的优化阶段(optimization phase)压缩 CSS 文件。这个插件通过利用诸如 cssnano 之类的 CSS 压缩工具来减少 CSS 文件的大小,从而提升网页加载速度和整体性能。

  • html-webpack-plugin:是一个常用的 Webpack插件,它简化了在 webpack 构建过程中对 HTML 文件的处理。这个插件主要做了以下几件事情:

  • mini-css-extract-plugin: 主要作用是在 Webpack 构建过程中将 CSSJavaScript 模块中抽取出来,生成独立的 CSS 文件。这样做有以下几个好处:

  • postcss:是一个强大的 CSS 处理器,它使用 JavaScript 插件来转换 CSS 代码。这意味着你可以自动完成一系列任务,如语法 sugar 的编写(例如使用未来的 CSS 特性)、浏览器兼容性处理(自动添加浏览器前缀)、代码优化和 linting 等。PostCSS 不是一个预处理器(像 SassLess),而是一个在预处理器之后或直接对 CSS 进行操作的工具,提供了高度的灵活性和模块化。

  • postcss-loader:是一个 Webpack 加载器,它允许你在 Webpack 构建流程中使用 PostCSS。通过这个加载器,你可以应用 PostCSS 的各种插件来处理 CSS 文件,比如自动添加浏览器前缀、使用未来 CSS 特性、进行代码优化等。

  • postcss-preset-env:是一个 PostCSS 的预设(preset),它让你能够使用最新的 CSS 特性,同时确保生成的 CSS 代码兼容当前和旧版浏览器。这个预设自动包含了你需要的所有转译插件,以支持你所指定的目标浏览器环境。

  • style-loader:是一个 webpack 加载器(loader),它用于在 JavaScript 模块中动态地注入 CSS 代码到 DOM 中。这意味着当你在 JavaScript 文件中导入一个 CSS 文件时,style-loader 会把 CSS 作为 <style> 标签插入到 HTML 文档的 <head> 部分,从而使得样式生效。这种方式特别适合开发环境,因为它不需要额外的构建步骤来提取 CSS 到单独的文件中,使得样式变更可以即时反映在页面上,便于快速迭代和调试。

  • sass:是一种 CSS 预处理器,它能够将 Sass/SCSS 代码编译成普通的 CSS 代码

  • sass-loader:是 Webpack 中的一个加载器(loader),它的作用是让 Webpack 能够理解和处理 .sass.scss 文件。当 Webpack 遇到这些类型的文件时,sass-loader 会调用 Sass 库来把 Sass/SCSS 代码转换为 CSS 代码。

  • terser-webpack-plugin:利用 Terser 库来压缩(也称为最小化)JavaScript 代码的插件

In This Document