此插件允许覆盖webpack打包时的查找规则
一、用法:
new webpack.ContextReplacementPlugin(
resourceRegExp: RegExp,
newContentResource?: string,
newContentRecursive?: boolean,
newContentRegExp?: RegExp
)
如果资源(或目录)符合 resourceRegExp
正则表达式,插件会替换默认资源为 newContentResource
,布尔值 newContentRecursive
表明是否使用递归查找,newContextRegExp
用于筛选新上下文里的资源。如果 newContentResource
为相对路径,会相对于前一匹配资源路径去解析
二、例子
webpack 打包momentjs时会把所有语言包都打包,这样会使打包文件很大。此插件可以帮助我们只打包需要的语言包,大大减小打包文件大小。
new webpack.ContextReplacementPlugin(/moment[/\\]locale$/, /zh-cn|zh-hk|en/)
限定查找 moment/locale
上下文里符合 /zh-cn|zh-hk|en/
表达式的文件,因此也只会打包这几种本地化内容。
有关webpack插件更详细的介绍参考:https://cloud.tencent.com/developer/section/1477555