Webpack教程-概述

什么是Webpack

Webpack是一个静态资源打包工具 。它以一个或多个文件作为打包入口,将整个项目所有的文件编译组合成一个或多个文件进行输出。(输出的文件即编译好的文件,就可以在浏览器上运行)

Webpack官网

核心概念

entry (入口)

entirywebpack 应该使用哪个模块,来作为项目构建的起点。打包时,webpack会根据入口文件找出项目中模块和库的(直接或间接)依赖。

output (输出)

outputwebpack打包完的文件输出路径,及文件命名。

loader (加载器)

loaderwebpack 打包时用于转换或处理某些类型的模块。(webpack 本身只能处理jsjson等资源。)

plugin (插件)

plugin指扩展webpack 的功能。如打包优化资源管理注入环境变量等。

mode (模式)

modewebpack 打包时使用哪些模式进行内置优化。(webpack 主要有三种模式:developmentproductionnone)

主要功能

模块打包

将项目中的所有模块(jscss图片字体)当作一个整体,通过依赖关系将它们打包成一个或多个静态资源文件。

依赖管理

Webpack可以分析模块之间的依赖关系,根据配置的入口文件找出所有依赖的模块,并将其整合到打包结果中。

文件转换

Webpack 本身只处理jsjson 模块,但可通过loader(加载器),将其他类型的文件转换为有效的模块,使其能够被打包到最终的结果中。

代码拆分

Webpack支持将代码拆分成多个模块,实现按需加载和提升应用性能。

插件系统

Webpack 提供了丰富的插件系统,可通过插件实现各种功能的扩展。如压缩代码、自动生成HTML文件等。

注意:

  1. Webpack支持所有符合ES5标准 的浏览器(不支持IE8及以下版本)。Webpack中的import() require.ensure()需要Promise 。若要支持旧版本浏览器,需在使用此表达式之前,加载polyfill
  2. Webpack5需运行在Nodejs 10.13.0+
相关推荐
vivo互联网技术7 小时前
动效开发不踩坑:几种动效实现方案对比与实战选型
前端·性能优化·动效
Csvn7 小时前
【Vue3】Composition API vs Options API —— 什么场景该选哪个
前端
Csvn7 小时前
Vue3 迁移血泪史:v-model 的 .sync 陷阱,90% 升级项目都会踩
前端·vue.js
光影少年7 小时前
js单线程,为什在node环境下的js可以处理高并发请求?
前端·javascript·掘金·金石计划
vim怎么退出7 小时前
Dive into React——事件系统
前端·react.js·源码阅读
KaMeidebaby7 小时前
卡梅德生物技术快报|重组蛋白的表达和纯化:工艺调试全记录:大肠杆菌体系重组蛋白的表达和纯化参数标定(肠激酶轻链案例)
前端·人工智能·算法·数据挖掘·数据分析
Cobyte7 小时前
19.Vue Vapor 的实现原理原来这么简单
前端·javascript·vue.js
郝学胜-神的一滴7 小时前
中级OpenGL教程 009:用环境光告别模型死黑
前端·c++·unity·godot·图形渲染·opengl·unreal
半岛盒子7 小时前
AI Coding方案与事件流(前端)
前端
星栈7 小时前
Makepad 应用如何读文件、调接口、保存数据
前端·rust