في Nodejs، الوحدة النمطية عبارة عن ملف JS يستخدم لاستخدام بعض الوظائف المحددة. من خلال تقسيم جميع الوظائف إلى وحدات، يقتصر نطاق المتغيرات والوظائف العامة المحددة في كل وحدة أيضًا على هذه الوحدة، ويتم استخدامها لإدارة الوحدات النمطية ووحداتها التبعيات، ويمكن تغليف وحدات متعددة.
بيئة تشغيل هذه المقالة: نظام Windows 10، إصدار Nodejs 12.19.0، كمبيوتر Dell G3.
التمييز بين الحزم والوحدات النمطية: الاستخدام السليم للحزم والوحدات النمطية سيجعل برنامجك أقل تكرارًا، وسهل القراءة للغاية، ويعمل بكامل طاقته.
يتم استخدام الحزم لإدارة وحدات متعددة ويمكن تضمين وحدات متعددة في الدليل الجذر للحزمة. يحتوي ملف package.json الذي يتوافق مع مواصفات CommonJS بشكل عام على الحقول التالية:
الاسم: اسم الحزمة. أسماء الحزم فريدة ولا يمكن أن تحتوي إلا على أحرف صغيرة وأرقام وشرطات سفلية. الإصدار: رقم إصدار الحزمة. الوصف: وصف الحزمة. الكلمات الرئيسية: مجموعة الكلمات الرئيسية، المستخدمة للبحث. الصفحة الرئيسية: الصفحة الرئيسية للمشروع. البق: عنوان لتقديم البق. الترخيص: الترخيص. المشرفون: مجموعة من المشرفين. المساهمين: مجموعة من المساهمين. المستودعات: مجموعة من عناوين استضافة مستودعات المشروع. التبعيات: تبعيات الحزمة.يمكن تحرير ملف package.json يدويًا أو إنشاؤه من خلال الأمر npm init. أدخل الأمر npm init في الوحدة الطرفية لإنشاء حزمة تحتوي على ملف package.json. أدخل مباشرة npm init --yes لتخطي الإجابة على السؤال وإنشاء ملف package.json مباشرةً بالقيم الافتراضية.
قم بتثبيت الحزمة من خلال الأمر npm install xxx. على سبيل المثال:
حزمة التثبيت: npm install Express حزمة التحديث: npm update Express حذف الحزمة: npm uninstall Expressابحث عن الحزمة في مجتمع npm وقم بتثبيتها من خلال الأمر npm install اسم الوحدة. اسم كل وحدة فريد عالميًا.
نحتاج إلى مقارنة JS في المتصفح مع JS في Node.js:
في JavaScript، نقوم عادةً بتقسيم كود JavaScript إلى عدة ملفات js، ثم نقوم بدمج ملفات js هذه وتشغيلها في المتصفح. في Node.js، يتم تقسيم كافة الوظائف إلى وحدات. كل وحدة هي ملف js، كما يقتصر نطاق المتغيرات والوظائف العامة المحددة في كل وحدة على هذه الوحدة فقط.يوفر Node.js رسميًا العديد من الوحدات، كل منها تنفذ وظيفة، مثل الوحدة fs لتشغيل الملفات وأنظمة الملفات، والوحدة http لبناء خدمات http، ومسار الوحدة لمعالجة مسارات الملفات، وما إلى ذلك.
نقوم بإنشاء وحدة نمطية وتصديرها باستخدام Module.exports.
ملف myModule.js
function foo() { console.log("hello syl");} Module.exports.foo = foo;ملف Index.js
var hello = require("./myModule.js");hello.foo();ملاحظة: يتم تعريف الوحدة الأساسية في دليل lib/ الخاص بكود مصدر Node.js. سوف تقوم require() دائمًا بتحميل الوحدات الأساسية أولاً. على سبيل المثال: require('http') تُرجع دائمًا وحدة HTTP المضمنة، حتى لو كان هناك ملف بنفس الاسم.
لتبسيط عملياتك، توفر Node.js متغيرًا خاصًا: Exports يساوي Module.exports. هذين السطرين من التعليمات البرمجية لهما نفس التأثير:
Module.exports.foo = foo;exports.foo = foo;اشرح الحالة:
// Module.jsconsole.log('module', Module)console.log('module.exports', Module.exports)console.log('exports', Exports)console.log(module.exports === Exports) ;console.log("===================================================================================================================================================================================================================> Exports = { a: 3, };console.log(exports);console.log(module.exports);console.log(exports === Module.exports);require() تحصل على القيمة المصدرة بواسطة Module.exports. يمكنك استخدام Module.exports وexports لتصدير أعضاء متعددين. يمكنك فقط استخدام Module.exports لتصدير عضو واحد.
التعلم الموصى به: "الفيديو التعليمي لـnodejs"
ما ورد أعلاه هو المحتوى التفصيلي لما تفعله وحدات وحزم Nodejs. لمزيد من المعلومات، يرجى الانتباه إلى المقالات الأخرى ذات الصلة على هذا الموقع!