webpack从零开始(二)

66 阅读2分钟

上一讲我们初步体验了webpack的最基础用法.

下面我们简单了解一下他的核心API配置项,在前文中也或多或少有过使用,那么来整体预览一下。

1. entry(入口)

告诉webpack我要打包编译谁(文件)。

2. output(输出)

告诉webpack我要把编译后的文件放到哪,叫啥名。

3. loader(加载器)

因为webpack只能处理js和json资源(webpack5能解析图片了),其他的资源需要借助loader才能解析。

4. plugins(插件)

扩展webpack的功能

5. mode(模式)

  • 开发模式: development(开发状态,代码能运行即可)
  • 生产模式: production(对代码进行压缩优化)

webpack只能处理js和json,其他资源并不能解析。

那该如何配置呢?

1、处理样式资源(css, less, sass, scss, styl样式)(这里展示scss的处理,其余配置请参照官网)

首先引入动态添加样式标签插件style-loader、预装sass、样式编译插件css-loader、sass-loader

image.png

添加配置项

image.png

2. 处理图片资源

在webpack4中,处理图片资源要加载file-loader和url-loader,用来解析图片

最新的5已经将上述loader内置在webpack内,只需简单配置即可

为什么还要配置呢?

因为图片资源如果像素较高,一般比较大,在生产环境中如果资源太大,一方面浪费空间,一方面会影响加载速度,所以我们需要对图片进行压缩处理。

一般我们将小图片默认让webpack转为base64,也就是把图片变成一串字符串,好处是减少一个图片的http请求,减轻服务器请求的压力

我们自己规定小于10kb的图片为小图片,将会视为 inline 模块类型,否则会被视为 resource 模块类型。

image.png