وصف المشكلة وخطوات إعادة الإنتاج:
عند تحميل src/moment.js
بـ <script type=module>
:
فشل تحميل الوحدة مع المصدر " http: // localhost : 5000 / node_modules / moment / src / lib / utils / hooks".
بيئة:
أي متصفح يدعم وحدات ES.
يمكن أن تؤدي إضافة امتداد الملف .js
إلى كل عمليات الاستيراد ضمن src/
بسهولة إلى سلسلة تصل إلى 105-228 من طلبات HTTP (اعتمادًا على اللغات)
يمكن تحقيق نتيجة أكثر ملاءمة عن طريق إضافة خصائص esnext
و module
إلى package.json
. من سلسلة مقالات كتبها Axel Rauschmayer ، يبدو أنك تريد شيئًا مثل:
"esnext": "src/moment.js",
"module": "./moment.esm.js",
(حيث ./moment.esm.js
سيكون هدف بناء جديد ، يتبع ESM بدلاً من تنسيق وحدة CJS)
+1 لهدف بناء ESM جديد. كمرجع ، يوفر Ractive.js ملف .mjs dist
سآخذ العلاقات العامة بخصوص التوثيق الخاص بهذا الأمر في https://github.com/moment/momentjs.com
راجع للشغل ، حتى مع وجود عدد كبير من طلبات HTTP ، قد يكون من الملائم أن يكون لديك تصميمات متصفح لاستخدامها في العروض التوضيحية - حيث لا يتم إجبار العروض التوضيحية على تلويث HTML الخاص بهم باستخدام تبعيات البرنامج النصي العام (أعلم أنه سيكون مجرد نص برمجي واحد علامة إذا كان هناك بنية IIFE أو UMD ، ولكن علامة البرنامج النصي لا تزال في غير مكانها من JS الذي يستخدمها ومنظف لتوزيع وحدة نمطية).
@ brettz9 سألقي نظرة على
التعليق الأكثر فائدة
يمكن أن تؤدي إضافة امتداد الملف
.js
إلى كل عمليات الاستيراد ضمنsrc/
بسهولة إلى سلسلة تصل إلى 105-228 من طلبات HTTP (اعتمادًا على اللغات)يمكن تحقيق نتيجة أكثر ملاءمة عن طريق إضافة خصائص
esnext
وmodule
إلىpackage.json
. من سلسلة مقالات كتبها Axel Rauschmayer ، يبدو أنك تريد شيئًا مثل:(حيث
./moment.esm.js
سيكون هدف بناء جديد ، يتبع ESM بدلاً من تنسيق وحدة CJS)