Moment: خطأ غير معلوم: لا يمكن العثور على الوحدة النمطية "./locale"

تم إنشاؤها على ١ مايو ٢٠٢٠  ·  69تعليقات  ·  مصدر: moment/moment

صف الخلل
لقد تلقيت هذا الخطأ على وحدة تحكم الكروم بعد أن أقوم ببناء بناء الإنتاج المحسن

خطأ غير معلوم: لا يمكن العثور على الوحدة النمطية "./locale"
في 2.d0944550.chunk.js: 1
في الوحدة.(2.d0944550.chunk.js: 1)
في f ((فهرس): 1)
في الوحدة النمطية 837 (main.091f08fc.chunk.js: 1)
في f ((فهرس): 1)
في Object.540 (main.091f08fc.chunk.js: 1)
في f ((فهرس): 1)
في ((فهرس): 1)
في Array.e [كدفع] ((فهرس): 1)
على main.091f08fc.chunk.js: 1

هذه هي مجموعتي. json

{
  "name": "sheetgo-front-end",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "@allpro/react-router-pause": "^1.1.3",
    "@material-ui/core": "^4.4.2",
    "@material-ui/icons": "^4.5.1",
    "@material-ui/lab": "^4.0.0-alpha.26",
    "@material-ui/styles": "^4.4.1",
    "@material/icon-button": "^3.1.0",
    "@material/react-button": "^0.15.0",
    "@material/react-card": "^0.15.0",
    "@material/react-icon-button": "^0.15.0",
    "@material/react-material-icon": "^0.15.0",
    "@material/react-select": "^0.15.0",
    "@material/react-tab": "^0.15.0",
    "@mdi/js": "^3.4.93",
    "@mdi/react": "^1.1.0",
    "@stripe/react-stripe-js": "^1.1.0",
    "@stripe/stripe-js": "^1.2.0",
    "@svgr/webpack": "^4.1.0",
    "apexcharts": "^3.8.6",
    "axios": "^0.19.2",
    "browser-info": "^1.2.0",
    "chart.js": "^2.7.2",
    "classnames": "^2.2.6",
    "color-sort": "^0.0.1",
    "connected-react-router": "^6.5.2",
    "countup.js": "^1.9.3",
    "cra-append-sw": "^2.7.0",
    "filepond": "4.1.0",
    "filepond-plugin-file-validate-size": "2.1.1",
    "filepond-plugin-file-validate-type": "1.2.2",
    "form-serialize": "^0.7.2",
    "fuse.js": "^3.4.2",
    "history": "^4.10.1",
    "inputmask": "^4.0.0",
    "is-mobile": "^2.0.0",
    "jquery": "^3.3.1",
    "jquery-ui-sortable-npm": "^1.0.0",
    "js-cookie": "^2.2.0",
    "lodash": "^4.17.10",
    "markdown-to-jsx": "^6.10.3",
    "material-components-web": "^3.1.0",
    "material-ui-chip-input": "^1.0.0",
    "md5": "^2.2.1",
    "memoize-one": "^5.0.4",
    "moment": "^2.22.2",
    "moment-timezone": "^0.5.27",
    "onecolor": "^3.1.0",
    "p-queue": "^6.1.1",
    "payform": "^1.2.2",
    "promise-throttle": "^1.0.0",
    "prop-types": "^15.7.0",
    "query-string": "^6.5.0",
    "react": "^16.8.1",
    "react-apexcharts": "^1.3.3",
    "react-dom": "^16.8.1",
    "react-draggable": "4.2.0",
    "react-filepond": "7.0.1",
    "react-google-authorize": "^1.0.4",
    "react-hotjar": "^2.0.0",
    "react-id-swiper": "^1.6.8",
    "react-intl": "^2.5.0",
    "react-modal-video": "^1.2.3",
    "react-redux": "^7.1.1",
    "react-resizable": "^1.8.0",
    "react-router": "^5.1.2",
    "react-router-dom": "^5.1.2",
    "react-router-last-location": "^2.0.1",
    "react-scripts": "^2.1.4",
    "react-sizeme": "^2.5.2",
    "react-stripe-elements": "^4.0.0",
    "react-text-mask": "^5.4.3",
    "react-virtualized-auto-sizer": "^1.0.2",
    "react-vis-network": "^1.0.0",
    "react-window": "^1.8.1",
    "recompose": "^0.30.0",
    "redux": "^4.0.4",
    "redux-react-session": "^2.4.0",
    "redux-saga": "^1.1.1",
    "redux-thunk": "^2.3.0",
    "socket.io-client": "^2.3.0",
    "sort-by": "^1.2.0",
    "tether": "^1.4.4",
    "throttle-debounce": "^2.1.0",
    "url-loader": "^1.0.1"
  }

إذا قمت بالبناء محليًا باستخدام الغزل لإصدار dev ، فإنه يعمل

لإعادة إنتاج
خطوات إعادة إنتاج السلوك:
أنشئ تطبيقًا بهذه المتطلبات. يجب أن تحصل على هذا الخطأ على وحدة التحكم.

سلوك متوقع
وصف واضح ومختصر لما توقعت حدوثه.

لقطات
إذا أمكن ، أضف لقطات شاشة للمساعدة في شرح مشكلتك.

سطح المكتب (يرجى استكمال المعلومات التالية):

  • نظام التشغيل: [مثل iOS]
  • المتصفح [مثل chrome، safari]
  • الإصدار [على سبيل المثال 22]

الهاتف الذكي (يرجى استكمال المعلومات التالية):

  • الجهاز: [مثل iPhone6]
  • نظام التشغيل: [مثل iOS8.1]
  • المتصفح [مثل متصفح الأسهم ، سفاري]
  • الإصدار [على سبيل المثال 22]

بيئة خاصة باللحظة

  • إعداد المنطقة الزمنية للجهاز الذي يعمل عليه الرمز
  • الوقت والتاريخ اللذين تم فيهما تشغيل الكود
  • مكتبات أخرى قيد الاستخدام (TypeScript ، Immutable.js ، إلخ)

الرجاء تشغيل الكود التالي في بيئتك وتضمين الإخراج:

console.log((new Date()).toString())
console.log((new Date()).toLocaleString())
console.log((new Date()).getTimezoneOffset())
console.log(navigator.userAgent)
console.log(moment.version)

سياق إضافي
أضف أي سياق آخر حول المشكلة هنا.

التعليق الأكثر فائدة

المشكلة نفسها،

تم إصلاحه عن طريق إزالة علامة carret قبل رقم الإصدار. يبدو إدخال Package.json الآن بالشكل:
"اللحظة": "2.24.0"

يبدو وكأنه خطأ من الإصدار الجديد.

ال 69 كومينتر

بالضبط. لقد واجهت هذا الخطأ للتو ورأيت أنهم دفعوا للتو بإصدار جديد منذ ساعات.

إذا كنت تستخدم الغزل ، أضف كتلة دقة إلى package.json لتجاوز إصدارات التبعية الفرعية ، فستعمل بالنسبة لي

  "resolutions": {
    "moment": "2.24.0"
  }

كذلك هنا!

2.24.0 أيضًا لا يزال لديه التحذير: ./node_modules/chart.js/node_modules/moment/src/lib/locale/locales.js Critical dependency: the request of a dependency is an expression

فقط قم بإعادة إنتاج هذه المشكلة

بالمثل ايضا!

  • 1

المشكلة نفسها،

تم إصلاحه عن طريق إزالة علامة carret قبل رقم الإصدار. يبدو إدخال Package.json الآن بالشكل:
"اللحظة": "2.24.0"

يبدو وكأنه خطأ من الإصدار الجديد.

الليلة قمت بتثبيت Jest وخلقت مشكلة وتم توجيهي لإزالة أي ملفات yarn.lock و package.lock جنبًا إلى جنب مع مجلد الوحدات النمطية الخاصة بي وتثبيت الغزل أو تثبيت npm. عندما قمت بتثبيت الغزل ، تلقيت الخطأ المذكور في هذا الموضوع - الصفحة التي ظهرت قالت إن الخطأ كان خطأ webpack وأشارت إلى المنطقة الزمنية اللحظية. عندما أزلت ملفات القفل الخاصة بي ، ومجلد الوحدة النمطية وأعدت تثبيته باستخدام npm install (بدلاً من تثبيت الغزل) - نجح كل شيء. باختصار عندما استخدمت أمر مدير حزمة مختلف ، فقد غيرت النتيجة.

الرجاء إزالة ^ في package.json بهذه الطريقة لقد نجح معي 👍

غريب مثل هذا الحادث وقع في وقت مبكر من هذا الأسبوع بسبب مكتبة الوعد هناك أيضًا مشكلة مثل ^ need to remove. أعتقد أن الأشخاص سيفعلون الآن بشكل أو بآخر جميع إصدارات package.json الصارمة بدلاً من ^

حاولت إزالة علامة الإقحام من package.json وتشغيل + rm -rf node_modules + yarn وما زلت أتلقى هذه المشكلة عند تشغيل webpack

أنا أستخدم المنطقة الزمنية اللحظية ، ويتم تعيينها افتراضيًا على 2.25. إزالة علامة الإقحام لا فرق

كذلك هنا!

هذا يعمل بالنسبة لي ، أنا أستخدم تطبيق create-response-app.
// في webpack.config.js

plugins: [
...
// new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),
// replace the line above with below, regex to match the locale you want to use
new webpack.ContextReplacementPlugin(/moment[\/\\]locale/,  /(en|zh-cn)\.js/)
...
]

يبدو أن هناك مشكلة في أحدث إصدار. اضطررت للعودة إلى "2.24.0" بدون "^" وهذا سمح لمواقعي بالبناء.

نفس المشكلة هنا مع إصدار اللحظة 2.25.0 في أحد مشاريعي القائمة على gatsby:

Cannot find module './locale'                              


> 1 | import { Moment } from './constructor';                                                                                                 
    | ^                                                                                                                                       
  2 |                                                                                                                                         
  3 | var proto = Moment.prototype;                                                                                                           
  4 |                                                                                                                                         


  WebpackError: Cannot find module './locale'                                                                                                 

  - prototype.js:1 webpackMissingModule                                                                                                       
    node_modules/moment/src/lib/moment/prototype.js:1:1                                                                                       

  - prototype.js:1 Module../node_modules/moment/src/lib/moment/prototype.js                                                                   
    node_modules/moment/src/lib/moment/prototype.js:1:1                                                                                       

  - moment.js:1 Module../node_modules/moment/src/lib/moment/moment.js                                                                         
    node_modules/moment/src/lib/moment/moment.js:1:1                                                                                          

  - moment.js:1 Module../node_modules/moment/src/moment.js                                                                                    
    node_modules/moment/src/moment.js:1:1

مع لحظة 2.24.0 لا توجد مشكلة من هذا القبيل.

هل يمكن لشخص أن يقدم مثالاً أدنى (غير عملي) حتى يمكن التحقق من ذلك؟

اضطررت إلى العودة إلى "2.24.0" ، لا يمكن العثور على "./locale"

هذا يعمل بشكل مثالي بالنسبة لي: https://github.com/moment/moment/issues/4216#issuecomment -622453248

هل يمكن لشخص أن يقدم مثالاً أدنى (غير عملي) حتى يمكن التحقق من ذلك؟

مرحبًا ichernev - تجده مرفقًا. فقط قم بتشغيل تثبيت npm ، وابدأ npm :)

issue5484.zip

تم إرجاع معالجة الطلب إلى سلوك 2.24.0.

ثابت في 2.25.1.

لقد قمت بالتحديث إلى الإصدار 2.25.1 ، ولكن ما زلت أتلقى الخطأ.

prototype.js:1 Uncaught Error: Cannot find module './locale'
    at webpackMissingModule (prototype.js:1)
    at Module../node_modules/moment/src/lib/moment/prototype.js (prototype.js:1)
    at __webpack_require__ (bootstrap:782)
    at fn (bootstrap:150)
    at Module../node_modules/moment/src/lib/moment/moment.js (moment.js:1)
    at __webpack_require__ (bootstrap:782)
    at fn (bootstrap:150)
    at Module../node_modules/moment/src/moment.js (moment.js:1)
    at __webpack_require__ (bootstrap:782)
    at fn (bootstrap:150)
    at Module../src/Menu.js (Home.js:186)
    at __webpack_require__ (bootstrap:782)
    at fn (bootstrap:150)
    at Module../src/App.js (Add.js:157)
    at __webpack_require__ (bootstrap:782)
    at fn (bootstrap:150)
    at Module../src/index.js (index.css?02e3:45)
    at __webpack_require__ (bootstrap:782)
    at fn (bootstrap:150)
    at Object.0 (serviceWorker.js:135)
    at __webpack_require__ (bootstrap:782)
    at checkDeferredModules (bootstrap:45)
    at Array.webpackJsonpCallback [as push] (bootstrap:32)
    at main.chunk.js:1

لكن ربما أفعل شيئًا خاطئًا. يمكن لأي شخص أن يؤكد أن هذا الخطأ قد اختفى في 2.25.1؟

نفس المشكلة بالنسبة لي والمنطقة الزمنية. لقد حاولت فرض 2.24.0 ، ولكن لا تزال نفس المشكلة منذ التخمين الفوري يستخدم المنطقة الزمنية الأحدث؟

لا يزال يحصل على الخطأ

@ strange1120 هي [email protected]؟
إذا كنت تستخدم الغزل ، فجرّب yarn why moment لإظهار الأقسام المثبتة.

ichernev آسف ، يمكنني أن أؤكد 2.25.1 يلقي نفس الخطأ. باستخدام التطبيق الذي قمت بتحميله سابقًا ، و node_modules / package-lock.json نظيف ، يمكنني رؤية الإصدار 2.25.1 ولكن لا يزال يتم طرحه.

لماذا أغلقت هذه القضايا .. هذا يعيث فسادا

نعم انا ايضا. اعتقدت أنه كان Docker الخاص بي

تمت إزالة اقتراح - لا يستحق العناء في عام 2020 :( ichernev أي تحديث حتى الآن؟

بالنسبة للأشخاص الذين يستخدمون تطبيق create-react-app والذين لا يريدون إخراج CRA ، يمكنك تثبيت:

ثم أنشئ config-overrides.js في الدليل الجذر لمشروعك لمزيد من التجاوز.

module.exports = function override(config, env) {
  // do stuff with the webpack config...
  return config;
};

تحرير الحزمة الخاصة بك. json:

"start": "react-app-rewired start",
"build": "react-app-rewired build",
"test": "react-app-rewired test",

لأنني أستخدم تصميم النمل ، يبدو أن config-overrides.js يبدو كالتالي:

const { override, fixBabelImports } = require("customize-cra");
const webpack = require("webpack");

const fixMomentJs = (config) => {
  config.plugins.push(
    new webpack.ContextReplacementPlugin(/^\.\/locale$/, (context) => {
      if (!/\/moment\//.test(context.context)) {
        return;
      }
      // context needs to be modified in place
      Object.assign(context, {
        // include locales
        regExp: /^\.\/(fr|en)/,
        // point to the locale data folder relative to moment's src/lib/locale
        request: "../../locale",
      });
    })
  );
  return config;
};

module.exports = override(
  fixMomentJs,
  fixBabelImports("import", {
    libraryName: "antd",
    libraryDirectory: "es",
    style: "css",
  })
);

لكنك ستكون أكثر بساطة ، أعتقد أن شيئًا كهذا:

module.exports = function override(config, env) {
  config.plugins.push(
    new webpack.ContextReplacementPlugin(/^\.\/locale$/, (context) => {
      if (!/\/moment\//.test(context.context)) {
        return;
      }
      // context needs to be modified in place
      Object.assign(context, {
        // include locales
        regExp: /^\.\/(fr|en)/,
        // point to the locale data folder relative to moment's src/lib/locale
        request: "../../locale",
      });
    })
  );
  return config;
};

بالنسبة للأشخاص الذين لديهم حق الوصول إلى Webpack ، يمكنك إضافة الإدخال التالي إلى مجموعة المكونات الإضافية في تكوين Webpack الخاص بك:

    new webpack.ContextReplacementPlugin(/^\.\/locale$/, (context) => {
      if (!/\/moment\//.test(context.context)) {
        return;
      }
      // context needs to be modified in place
      Object.assign(context, {
        // include locales
        regExp: /^\.\/(fr|en)/,
        // point to the locale data folder relative to moment's src/lib/locale
        request: "../../locale",
      });
    })

حتى يتم إصدار الإصلاح ، كما ذكر saadzr ، يمكنك مؤقتًا فقط تعيين لحظة إلى الإصدار "2.24.0". إزالة carret: "^".

لمن لا يعرف كيف يفعل ذلك. ابحث عن الحزم التي تستخدم اللحظة: npm ls moment . ربما سترى:

└─┬ [email protected]
  ├── [email protected] 
  └─┬ [email protected]
    └── [email protected]  deduped

لذلك داخل antd/package.json و rc-picker/package.json في dependencies :

"moment": "^2.24.0", -> "moment": "2.24.0"

وتشغيل npm i مرتين. لا أعرف لماذا تحتاج مرتين ، لكنها لا تعمل إلا بعد مرتين.

@ talgat-ruby هذا يعني تعديل مجلد node_modules الذي لا يتم دفعه إلى المستودعات ، سيتعين على الأشخاص الذين استنساخ المشروع القيام به في كل مرة ، وهذا ليس حلاً جيدًا على ما أعتقد.
على سبيل المثال ، نحن نعمل مع العديد من المتعاونين ولا يمكننا إخبارهم بالقيام بذلك في كل مرة يقومون فيها باستنساخ مستودع.
أفضل طريقة لإصلاح هذا حتى يتم إصدار الإصلاح هي تكوين Webpack كما هو مذكور أعلاه.

nathanagez هذا إصلاح مؤقت. من المحتمل أن يصدر فريق Antd الإصلاح الرسمي قريبًا. ونعم أنت على حق لا يمكنك الاعتماد عليه.

@ talgat-ruby شرحت كيفية تكوين Webpack ، انظر الجزء العلوي ، حتى تتمكن من دفع الحل البديل إلى المستودع الخاص بك.

أستطيع أن أؤكد أن اقتراح @ talgat-ruby حل المشكلة بالنسبة لي.

rilyu لقد

أنا أستخدم المنطقة الزمنية اللحظية ولم أحدد إصدارًا للحظة.
يبدو بعد ذلك ، أثناء التثبيت ، أن yearn يقوم بتثبيت أحدث إصدار من الوقت باعتباره تبعية -> [email protected] وهو غير متوافق.

مضيفا في الواقع
"الدقة": {"اللحظة": "2.24.0"}
يحل المشكلة.

شكرا جزيلا

أي أخبار من المطورين؟

الحصول على هذا الخطأ باستخدام MaterialUI DatePicker. حاولت التراجع يدويًا إلى 2.24.0 ولكن لم يحالفني الحظ. آمل أن نرى هذا حل قريبا. أعتقد أنني سأستخدم نوع TextField الأصلي = "التاريخ" في الوقت الحالي.

المشكلة نفسها،

تم إصلاحه عن طريق إزالة علامة carret قبل رقم الإصدار. يبدو إدخال Package.json الآن بالشكل:
"اللحظة": "2.24.0"

يبدو وكأنه خطأ من الإصدار الجديد.

هذا يعمل بالنسبة لي! تينكس

أواجه نفس المشكلة ، لقد قمت بحذف مجلد node_modules ثم قمت بتغيير الإصدار الحالي إلى 2.24.0 ثم قمت بتثبيته مرة أخرى ، استمرت المشكلة.
عندما أتحقق من rc-Calendar يستخدم 2.25.1 شيء من هذا القبيل. حاولت تحرير هناك لوفعل yarn install لا يزال قائما المشكلة. الرجاء المساعدة أنا أعمل في مشروع مهم

faizhameed حاول إزالة مجلد الوحدات النمطية للعقد.
قم بإزالة package-lock.json أيضًا (yarn.lock أيضًا إذا كنت تستخدم الغزل).

أضف هذا إلى package.json بعد التبعيات: {
...
} ،
الدقة: {"لحظة": "2.24.0"}

يجب أن يجبر RC-datepicker على استخدام اللحظة 2.24

نفس المشكلة هنا بعد الترقية إلى 2.25.0 و 2.25.1.
الحل الوحيد الذي نجح معي هو الرجوع إلى 2.24.0

للأسف لدي نفس المشكلة. لسبب ما ، الحل في package.json لا يعمل معي.
resolutions: { "moment": "2.24.0" }

في الوقت الحالي ، سأقوم بخفض التصنيف مثل pcarballeda

بالنسبة لي ، أدى إصلاح الإصدار إلى "moment": "2.24.0" وإضافة resolutions: { "moment": "2.24.0" } حل المشكلة مؤقتًا.

لم يتم العثور على الوحدة النمطية: خطأ: لا يمكن حل "./locale" في "D: \ Downloads \ Telegram \ ildamnode_modules \ rc-pickernode_modules \ Momentsrc \ lib \ locale"

كيف يمكن التغلب على هذا؟

"اللحظة": "2.24.0"

"التبعيات": {
"antd": "^ 4.2.0"،
"أكسيوس": "^ 0.19.2" ،
"classnames": "^ 2.2.6"،
"cross-env": "^ 7.0.2"،
"dva": "^ 2.4.1"،
"dva-model-extension": "^ 0.1.2"،
"less-vars-to-js": "^ 1.3.0"،
"libphonenumber-js": "^ 1.7.50"،
"لوداش": "^ 4.17.15"،
"Lodash.clonedeep": "^ 4.5.0"،
"اللحظة": "2.24.0"،
"nprogress": "^ 0.2.0"،
"path-to-regexp": "^ 6.1.0"،
"أنواع العناصر": "^ 15.7.2"،
"سلسلة الاستعلام": "^ 6.12.1" ،
"تفاعل": "^ 16.13.1" ،
"رد فعل العملة تنسيق": "^ 1.0.0"،
"رد فعل-مخصص-أشرطة التمرير": "^ 4.2.1" ،
"رد فعل دوم": "^ 16.13.1" ،
"رد فعل خوذة": "^ 6.0.0"،
"تفاعل-مثالي-شريط التمرير": "^ 1.5.8"،
"svg-sprite-loader": "^ 4.2.1"،
"لغة umi-plugin-locale": "^ 2.11.5"
} ،

خفضت إلى 2.24.0 عملت بالنسبة لي. قم بإزالة ^ مع 2.24.0.
تم أيضًا تحديث جميع تبعيات اللحظة يدويًا إلى 2.24.0 في package-lock.json أيضًا.

وجود مشكلة مع 2.24 ، محاولة وضع "الدقة" ... لكنني لم أقوم بالتحديث إلى 2.25 ، فما هو الخطأ؟ كان يعمل يوم الخميس.

خفضت إلى 2.24.0 عملت بالنسبة لي. قم بإزالة ^ مع 2.24.0.
تم أيضًا تحديث جميع تبعيات اللحظة يدويًا إلى 2.24.0 في package-lock.json أيضًا.

شكرا عملت! هناك مشكلة في الغزل. عملت مع Npm

حتى يتم إصدار الإصلاح ، كما ذكر saadzr ، يمكنك مؤقتًا فقط تعيين لحظة إلى الإصدار "2.24.0". إزالة carret: "^".

لمن لا يعرف كيف يفعل ذلك. ابحث عن الحزم التي تستخدم اللحظة: npm ls moment . ربما سترى:

└─┬ [email protected]
  ├── [email protected] 
  └─┬ [email protected]
    └── [email protected]  deduped

لذلك داخل antd/package.json و rc-picker/package.json في dependencies :

"moment": "^2.24.0", -> "moment": "2.24.0"

وتشغيل npm i مرتين. لا أعرف لماذا تحتاج مرتين ، لكنها لا تعمل إلا بعد مرتين.

عمل! <3

yarn remove تثبيت الإصدار 2.25.2 من yarn add moment مما يجعله جيدًا بالنسبة لي

yarn remove تثبيت الإصدار 2.25.2 من yarn add moment مما يجعله جيدًا بالنسبة لي

ألن تكون هذه مشكلة في هذا الإصدار؟

@ Shakxzod-Namazbaev أعتقد أن المشكلة الأصلية كانت مع الإصدار 2.25.0 ، أفاد بعض الأشخاص أن نفس المشكلة تحدث في 2.25.1 ، وذكر آخرون أن خفض التصنيف إلى 2.24 يعمل معهم. في حالتي ، يبدو أن الإصدار 2.25.2 يعمل ، لذلك ربما لا تكون هناك حاجة إلى الرجوع إلى إصدار أقدم

@ Shakxzod-Namazbaev أعتقد أن المشكلة الأصلية كانت مع الإصدار 2.25.0 ، أفاد بعض الأشخاص أن نفس المشكلة تحدث في 2.25.1 ، وذكر آخرون أن خفض التصنيف إلى 2.24 يعمل معهم. في حالتي ، يبدو أن الإصدار 2.25.2 يعمل ، لذلك ربما لا تكون هناك حاجة إلى الرجوع إلى إصدار أقدم

إذن ليس لديك مشكلة مع الإصدار 2.25.2 الآن ، أليس كذلك؟

@ Shakxzod-Namazbaev بالضبط ، 2.25.2 تعمل بشكل جيد بالنسبة لي.

أستطيع أن أؤكد - لحظة 2.25.2 تعمل أيضًا بالنسبة لي.

أعتقد أن 2.25.2 لا بأس به في شكل مستقل ولكن في شكل مُدار بحزم ، لا يزال معطلاً (حزمة الويب في حالتي حيث تكون اللحظة تعتمد على المنطقة الزمنية اللحظية).

2.24.0 هو الخيار المناسب للأشخاص الذين يستخدمون حزم الويب والحزم الأخرى التي تعتمد على اللحظة.

الإصدار 2.25.2 لي في نموذج مُدار بواسطة الحزمة - حزمة الويب المكونة في مشروع يستند إلى gatsby (الإصدار 2.25.0 لم يفعل):

خطوط package.json ذات الصلة:

dependencies: {
    ...
    "moment": "^2.25.2",
    ...
}

أنا لا أستخدم moment-timezone بالرغم من ذلك.

من الجنون أن تقرير هذا العدد لا يزال مغلقًا مع العديد من الأشخاص المتأثرين و "الحل" الوحيد حتى الآن هو الرجوع إلى إصدار قديم!؟!؟!

ichernev شكرا لك! التحديث إلى 2.25.2 يعمل على إصلاح هذه المشكلة بالنسبة لي!

--- a/front/package.json
+++ b/front/package.json
@@ -5,7 +5,7 @@
   "dependencies": {
-    "moment": "^2.22.2",
+    "moment": "^2.25.2",

موافق. امتدحت مبكرا جدا. على الرغم من لحظة الإصدار. 2.25.2 webpack قادر على إنتاج حزمة عمل بدون أخطاء ، لكن استيراد اللغة لم يعد يعمل - يبدو أنه يتم تجاهله (ربما يكون لهذا علاقة بـ sideEffects / اهتزاز الشجرة ؟).

على سبيل المثال:

import moment from "moment"
import "moment/locale/pl"

// set global 'moment' locale (polish)
moment.locale("pl")

// ... somewhere later
console.log(moment().format("DD MMMM YYYY HH:mm:ss"))

مع الإصدار 2.25.2 يكون الناتج 04 May 2020 16:38:15 ، وهذا غير صحيح ، كما يجب أن يكون
04 maja 2020 16:38:58 .

لذلك ، لا يزال الإصدار 2.24.0 آخر إصدار يعمل.

واجهت نفس المشكلة ، إزالة الجزرة من الإصدار إصلاح هذا.

مثل هذا في ملف package.json الخاص بك --- "لحظة": "2.24.0"

الإصدار: 2.24.0

حسنًا ، كنت أختبر محليًا ، ولا يمكنني تحديد السبب حقًا ، ولكن إذا كانت الخاصية package.json module فهذا يعني أنها معطلة. إذا كان هناك فقط jsnext:main فإنه يعمل. يتعلق هذا بملفات الإعدادات المحلية التي لم يتم تحميلها بشكل صحيح ، بينما لا تزال مضمنة في الحزمة.

لذا فإن خاصية الوحدة النمطية "الحديثة" التي تحل محل jsnext: main ليست مجرد إعادة تسمية أو اسم بديل. لديها بعض الأجندة الخفية التي لم يتم الإعلان عنها بشكل جيد.

2.25.3 يخرج بدون module .

ichernev - شكرا! يمكنني تأكيد عمل الإصدار 2.25.3 (حزمة الويب قادرة على إنتاج حزمة بدون أخطاء وتضمين / إعداد الإعدادات المحلية كما هو متوقع).

إصلاحات في 2.25.3 بالنسبة لي.

المشكلة نفسها،

تم إصلاحه عن طريق إزالة علامة carret قبل رقم الإصدار. يبدو إدخال Package.json الآن بالشكل:
"اللحظة": "2.24.0"

يبدو وكأنه خطأ من الإصدار الجديد.

بعد ذلك يعمل!

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات