如何防止moment.js用webpack加载语言环境?

本地文件是.json文件,其中包含主题模板文件中使用的文本字符串的一组翻译。每种语言都使用单独的本地文件。

当您在代码中需要moment.js并将其与webpack打包在一起时,捆绑包的大小会变得很大,因为它包含所有区域设置文件。

您可以使用IgnorePlugin删除所有语言环境文件。例如,

示例

const webpack = require('webpack');
module.exports = {
   plugins: [
      //忽略moment.js的所有语言环境文件
      new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),
   ],
};
//在代码中加载特定的语言环境。
const moment = require('moment');
require('moment/locale/ja');
moment.locale('ja');

捆绑时,webpack将仅使用ja的语言环境文件。这将大大减小捆绑包的大小。