Nodemon هي أداة مساعدة لواجهة سطر الأوامر تساعد في إنشاء تطبيقات Node.js عن طريق إعادة تشغيل تطبيق العقدة ديناميكيًا عند تحديد تغييرات الملف في الدليل.
ستعلمك هذه المقالة كيفية تثبيت nodemon وتكوينه ليناسب احتياجاتك الخاصة ، بالإضافة إلى استكشاف خطأ شائع يحدث عند استخدام nodemon
لماذا يجب عليك استخدام Nodemon
عند تطوير خوادم الويب أو التطبيقات الخلفية ، فإنك ملزم بتغيير شفرتك للتعامل مع الأخطاء وتحسين هيكل ومنطق برنامجك.
يساعد Nodemon عن طريق إعادة تشغيل الخادم تلقائيًا عند إجراء تغييرات على التعليمات البرمجية الخاصة به. هذا يساعد في توفير الوقت ويسمح بتصحيح أسهل.
كيفية تثبيت Nodemon
يمكنك تثبيت Nodemon إما محليًا باعتباره تبعية تطوير أو عالميًا على مسار النظام.
لتثبيت nodemon بشكل عام ، قم بتشغيل الأمر npm التالي في الطرفية بجهاز الكمبيوتر الخاص بك:
npm تثبيت nodemon - عالميًا
لتثبيت nodemon محليًا ، يجب عليك تشغيل الأمر npm التالي داخل دليل المشروع الخاص بك في Terminal:
npm تثبيت nodemon - save-dev
بدء تشغيل Nodemon في تطبيق خادم الويب الخاص بك
يتطلب بدء تشغيل nodemon وجعله يشاهد تطبيق خادم الويب الخاص بك بضع خطوات. يعد مقطع التعليمات البرمجية أدناه نصًا برمجيًا أساسيًا للخادم الذي يقوم بتسجيل رسالة سلسلة إلى وحدة التحكم:
// app.js
مقدار ثابت صريح = يتطلب('يعبر');
مقدار ثابت التطبيق = صريح () ؛
app.listen ((5000), ()=>{
وحدة التحكم.سجل("أنا أتعلم عن nodemon")
});
لبدء مشاهدة هذا البرنامج النصي ، قم بتشغيل الأمر nodemon متبوعًا باسم الملف الذي يجب أن يشاهده:
nodemon app.js
يجب أن يتضمن الناتج الناتج شيئًا مثل النص التالي:
[nodemon] يبدأ "node app.js"
أنا أتعلم عن nodemon
بمجرد بدء nodemon بنجاح ، يتم إجراء أية تغييرات على ملف app.js سيتسبب الملف في إعادة تحميل تطبيق الخادم بالكامل.
يمكنك الخروج من nodemon بالضرب Ctrl + C في محطة جهاز الكمبيوتر الخاص بك. يمكنك أيضًا إعادة تشغيل عملية nodemon يدويًا عن طريق إدخال ملف روبية يأمر.
استخدام Nodemon مع خيارات سطر الأوامر
يحتوي Nodemon على العديد من خيارات سطر الأوامر التي يمكنك استخدامها لتعديل سلوكه.
لمشاهدة قائمة بجميع خيارات nodemon المتاحة ووظائفها ، قم بتشغيل هذا الأمر:
nodemon - خيارات المساعدة
من بين الخيارات العديدة المتاحة ؛
-
--تأخير: عندما يتغير ملف ، ينتظر nodemon ثانية بشكل افتراضي قبل إعادة تشغيل العملية. يمكنك تحديد مهلة مختلفة باستخدام -تأخير يُحوّل. يمكنك تحديد مقدار الوقت الذي سينتظره nodemon قبل إعادة التشغيل. على سبيل المثال:
nodemon - تأخير خمسة app.js
-
--يتجاهل: يتيح لك خيار تبديل التجاهل تجاهل ملفات معينة في تطبيق خادم الويب الخاص بك. يمكنك استخدام خيار التبديل مثل:
nodemon - تجاهل lib / app.js
-
--يشاهد: بشكل افتراضي ، عند التشغيل ، يراقب nodemon دليل العمل الحالي. للتحكم في هذا الخيار ، استخدم -يشاهد خيار لإضافة مسارات ملفات محددة وتغيير الدليل الذي تتم مشاهدته. على سبيل المثال ، مراقبة دليل الخادم:
nodemon - خادم المراقبة
-
- exec: على الرغم من أنها أداة مساعدة لجافا سكريبت ، إلا أنه يمكنك أيضًا استخدام Nodemon لمشاهدة ملفات غير جافا سكريبت مثل TypeScript و Python و Golang. يمكنك استخدام ال --إكسيك الخيار للحصول على وظيفة إعادة التحميل التلقائي لـ nodemon في مثل هذه البرامج النصية. على سبيل المثال ، استخدام nodemon في برنامج نصي من TypeScript:
nodemon --exec ts-node
-
- التالي: يبحث Nodemon افتراضيًا عن الملفات ذات امتدادات JavaScript و TypeScript و CoffeeScript و JSON. هذا بسبب يمكن أن تعمل مشاريع Node.js مع TypeScript وملفات CoffeeScript التي يتم تجميعها في JavaScript خالص قبل تنفيذها. من ناحية أخرى ، تتم مراقبة ملفات JSON أيضًا لأنها تُستخدم غالبًا لتخزين البيانات الوصفية لمشاريع Node.js. يمكنك استخدام ال -ه (أو --تحويلة) لتحديد قائمة ملفات مفصولة بفواصل لمشاهدتها. على سبيل المثال ، لمراقبة الملفات ذات الامتدادات .js, .json، و .mjs:
nodemon - jsext ، json ، mjs
استخدام ملفات تكوين Nodemon
يدعم Nodemon ملفات التكوين المحلية والعالمية. يمكنك العثور عليها في الدليل الرئيسي الخاص بك أو الدليل الجذر للمشروع ؛ عادة ما يطلق عليهم nodemon.json الملفات. بهذه الطريقة ، يمكنك حفظ تكوينات nodemon الخاصة بك وإعادة استخدامها بسهولة مع مشاريع أخرى.
ستتجاوز خيارات سطر الأوامر دائمًا إعدادات ملف التكوين. يشتمل ترتيب أولوية العمل على خيارات سطر الأوامر والملفات المحلية وملفات التكوين.
يمكن أن يستخدم ملف التكوين أي خيار سطر أوامر كقيمة مفتاح JSON.
على سبيل المثال:
{
"يشاهد": [ "الخادم" ],
"تحويلة": [ "شبيبة", "ts", "json" ],
"تأخير": "5000",
"يتجاهل": [ "lib / app.js" ]
}
في ما سبق nodemon.json ملف ، تم تعيين nodemon لمشاهدة ملف الخادم الدليل ، حدد الملفات ذات الامتداد .js, .ts ، و .json التمديدات ، تأخير 5 ثوانٍ قبل إعادة التشغيل بعد تغيير الملف ، وتجاهل تغييرات الملف في النهاية lib / app.js.
كبديل ، يدعم nodemon استخدام package.json للتهيئة إذا احتفظت بجميع تكوينات الحزمة في مكان واحد. تحت nodemonConfig في ملف package.json ، حدد التكوين بنفس التنسيق الذي تريده لملف التكوين.
على سبيل المثال ، يتضمن ملف package.json هذا نفس التكوين مثل ملف nodemon.json أعلاه:
{
"اسم": "nodemon",
"إصدار": "",
"وصف": "",
"nodemonConfig": {
"يشاهد": [
"الخادم"
],
"تحويلة": [ "شبيبة", "ts", "json" ],
"تأخير": "5",
"يتجاهل": [
"lib / app.js"
]
}
}
معالجة أخطاء Nodemon
أثناء تطوير تطبيقك ، ستحتاج إلى ذلك معالجة الأخطاء في JavaScripر على طول الطريق. للتعامل مع هذه الأخطاء ، ستحتاج أولاً إلى معرفة سبب حدوثها.
إليك خطأ شائع يمكن أن تصادفه عند العمل مع nodemon:
[nodemon] تعطل التطبيق - في انتظار تغييرات الملف قبل البدء ...
هناك عدة أسباب لحدوث رسالة الخطأ هذه وطرق عديدة لإصلاح الأسباب.
- بناء جملة JavaScript خاطئ في الملفات التي يشاهدها nodemon. لمنع هذا الخطأ ، انتقل من خلال كود JavaScript لتحديد أي أخطاء في بناء الجملة بداخله.
- يمكن أن يتداخل تشغيل مهام متعددة في الخلفية مع هذه المهمة بالذات. حاول إيقاف جميع عمليات الخلفية وتشغيل البرنامج مرة أخرى لإصلاح ذلك.
- يمكن أن يتسبب تنظيم الدليل غير الصحيح أيضًا في حدوث مشكلات. على سبيل المثال ، عدم وجود ملفات app.js و package.json في نفس الدليل. تأكد من هيكلة الدليل الخاص بك بشكل صحيح بحيث لا يؤثر على تشغيل البرامج الخاصة بك.
الحصول على الراحة مع Nodemon
لقد رأيت فائدة nodemon وكيف يمكنها إنشاء سير عمل أفضل وتقليل الأخطاء وجعل تصحيح الأخطاء أسرع وأسهل.
ومع ذلك ، يمكن أن تحدث الأخطاء عند العمل مع nodemon. بصفتك مطورًا ، من المهم تعلم كيفية استكشاف هذه الأخطاء وإصلاحها.