كيفية تمكين وحدات ES في Node.js

كيف تقوم بتمكينimportبناء الجملة في Node.js؟

تستخدم العديد من البرامج التعليمية الآن ملحقimport XXX from 'XXX'(وحدات ES) بناء الجملة بدلا منconst XXX = require('XXX')(CommonJS) بناء الجملة.

إذا أضفت ذلك إلى تطبيق Node.js الخاص بك ، فلن يعمل. ستحصل على خطأ مثل هذا:

unexpected identifier error

unexpected identifier..

أحد الحلول لهذا هو استخدامبابل. إذا كان لديك بالفعل إعداد Babel لمشروعك ، فمن المفترض أن يعمل هذا بالفعل من أجلك.

لكن لم تعد بحاجة إلى Babel الآن لأن Node لديها دعم تجريبي لوحدات ES ، ولأنها تجريبية ، لتمكينها يجب عليك القيام بثلاثة أشياء.

أولاً ، قم بتثبيت أحدث إصدار من Node.js. لديها أحدث وأروع الميزات.

ثانيًا ، أضف ملف"type": "module"خط في الخاص بكpackage.jsonملف.

ثالثًا ، استخدم ملف--experimental-modulesالعلم عند الاستدعاءnodejs:

node --experimental-modules app.js

يجب أن تكون على ما يرام!

البديل هو تجنب إضافة"type": "module"خط في الخاص بكpackage.jsonالملف وبدلاً من ذلك قم بإعادة تسمية ملفapp.jsملف (أو أيا كان)app.mjs.

لاحظ أن ملفrequire()سيتوقف بناء الجملة عن العمل.

بالنسبة لإصدارات Node.js الأقدم التي قد لا تدعم هذه العلامة ، أوصي بمراجعة ملفesmوحدة npm.

تحميل مجانيكتيب Node.js


المزيد من دروس العقدة: