Согласно этой теме на Github, указанной официальной документацией: https://github.com/moment/moment/issues/2373
Вы можете попробовать как ldrick
answer:
Это соответствующие части в моем webpack.config.js.
const path = require("path");
const webpack = require("webpack");
module.exports = () => {
return {
// ...
resolve: {
// Use src Moment.js to be optimized and packed.
alias: {
moment$: "moment/src/moment",
},
},
// ...
plugins: [
// Switch context for Moment.js locales.
new webpack.ContextReplacementPlugin(/^\.\/locale$/, context => {
// Don't touch anything else then "moment".
if (!/\/moment\//.test(context.context)) {
return;
}
// Working with "moment/src/moment" instead of "moment" requires
// redirecting "./locale" back to "../../locale".
Object.assign(context, {
// Want all locales, enable this line.
// regExp: /^\.\/\w+/,
// Just use some locales, enable this line.
// regExp: /de|fr|hu/,
// Don't use any locales except default "en".
regExp: undefined,
request: "../../locale",
});
}),
// ...
],
// ...
};
};
Или вместо new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/)
попробуйте это выражение (похоже, не стоит импортировать файлы локаций при сборке):
new webpack.ContextReplacementPlugin(
/moment[\/\\]locale$/,
/en|de|fr|es|pl|ua|ru/
),
(измените языки в зависимости от того, что вы используете).
Надеюсь, это поможет или хотя бы даст вам немного света!