noParse
作用
noParse
是 module 的配置项,通过配置 webpack.module.noParse
可以让 webpack 不对匹配到的文件进行依赖解析,进而提高打包效率。
只是忽略解析匹配到的文件,匹配到的文件依旧会参与打包。
使用场景
如果公共库中没有依赖其他模块(即没有导入其他模块,如 jquery 中没有导入其他模块),则可以通过 noParse 来配置此公共库,使 webpack 不会对其进行依赖解析,来提高打包效率。
配置
1 | const path = require("path"); |
externals
作用
externals
是 webpack 顶层配置项,通过配置 webpack.externals
可以使 webpack 忽略对匹配文件的打包,进而提高打包效率。
使用场景
对于通过 CDN 引用的公共库,可以通过 webpack.externals
来进行配置,使其不参与 webpack 的打包。 library 的开发者也可以使用此 externals 来配置不需要参与打包的其他依赖。
配置
1 | // webpack.config.js |
1 | <!-- html文件 --> |
1 | //引用 jquery 的文件 |
IgnorePlugin
作用
IngroePlugin
是 webpack 的内置插件,作用和 webpack.externals
类似,都可以让匹配到的文件不参与打包。
使用场景
对于如 moment 等第三方库,内置一些了我们用不到的文件,可以使用 IngorePlugin
来使这些无用文件不参与打包。
配置
1 | const webpack = require("webpack"); |
1 | //使用 moment 的库,需要手动引入所需的语言包 |