webpack 简介

169 阅读1分钟

webpack 是什么

webpack 是一种前端资源构建工具,一个静态模块打包器(module bundler)。 在 webpack 看来, 前端的所有资源文件(js/json/css/img/less/...)都会作为模块处理。 它将根据模块的依赖关系进行静态分析,打包生成对应的静态资源(bundle)

前端资源构建工具的理解:以前打包前端资源(譬如less -> css, es6->es5等)都是不同的工具去维护编译打包,这样打包很麻烦又难维护。所以就除了前端资源构建工具,前端资源构建工具就是把一个大的工具,把这些小工具集合起来,我只需要维护大工具即可,大工具就可以把这一系列的小事情干好。大工具就是构建工具

静态模块打包器:在webpack中,js、css、img等都是静态资源。webpack是在一个js文件中引入全部资源(js、图片等),webpack以这个js为入口文件,把他们的依赖关系梳理好,引入形成代码块chunk,chunk经过编译打包,然后输出出去(文件叫bundle)

image.png

webpack 五个核心概念

Entry

入口(Entry)指示 webpack 以哪个文件为入口起点开始打包,分析构建内部依赖图。

Output

输出(Output)指示 webpack 打包后的资源 bundles 输出到哪里去,以及如何命名。

Loader

Loader 让 webpack 能 够 去 处 理 那 些 非 JavaScript 文 件 (webpack 自 身 只 理 解 JavaScript)

Plugins

插件(Plugins)可以用于执行范围更广的任务。插件的范围包括,从打包优化和压缩, 一直到重新定义环境中的变量等。

Mode

模式(Mode)指示 webpack 使用相应模式的配置

image.png