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

javascriptfront end technologyobject oriented programming

本地文件是一个 .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 的语言环境文件。这将大大减少打包大小。


相关文章