إصلاح · Node وnpm والبناء
"Cannot use import statement outside a module" أو ERR_REQUIRE_ESM
ما قد تراه
- يفشل سكربت عند أول سطر import
- تقول حزمة إنها وحدة ES
السبب الأرجح
لدى Node أسلوبان للوحدات (import وrequire) والملف أو الحزمة يستخدم أسلوباً لا يطابق الإعدادات.
افحص أولاً (نحو دقيقتين)
- هل في package.json حقل "type": "module"؟ وهل الملف .js أو .mjs أو .cjs؟
أمر الإصلاح
ما تكتبه هنا لا يغادر متصفحك. البحث يعمل داخل هذه الصفحة ولا يُرسل شيء إلى خادم ولا إلى ذكاء اصطناعي.
يبقى في هذا المتصفح وعلى هذا الجهاز فقط. تُحذف المفاتيح وكلمات المرور قبل أي حفظ.
لغة الأمر
الصقه في Claude أو ChatGPT أو Gemini أو Cursor ثم اتبع ما يقوله.
بعد أن جرّبته، هل نجح؟
الخطوات
- اعرض أعلى الملف الفاشل ونوع package.json وكيف يبدأ السكربت.
- اختر أسلوباً واحداً للمشروع واجعل الملف مطابقاً له: غيّر الامتداد إلى .mjs أو اضبط "type" أو استخدم import() الديناميكي لحزمة ES فقط.
لا تفعل هذا
- لا تخلط require وimport في الملف نفسه.
- لا تحوّل كل الملفات دفعة واحدة.