Latest web development tutorials

نظام وحدة نود.جي إس

لجعل ملف نود.جي إس يمكن الاتصال ببعضهم البعض، يوفر نود.جي إس نظام معياري بسيط.

الوحدة هي جزء أساسي من نود.جي إس التطبيقات والملفات وحدات هي 1-1. وبعبارة أخرى، ملف نود.جي إس هو وحدة، قد يكون هذا الملف شفرة جافا سكريبت، JSON أو ملحقات جمعت C / C ++.

إنشاء وحدة نمطية

في نود.جي إس، إنشاء وحدة نمطية بسيطة جدا، ونحن إنشاء ملف "main.js"، على النحو التالي:

var hello = require('./hello');
hello.world();

في المثال أعلاه، يتطلب رمز ( './ مرحبا') قدم الدليل ملف hello.js الحالي (./ الدليل الحالي، نود.جي إس احقة شبيبة الافتراضي).

يوفر نود.جي إس الصادرات وتتطلب كائنين، حيث صادرات مفتوحة واجهات وحدة تتطلب وحدة نمطية للحصول على من الواجهة الخارجية، وهي وحدة الصادرات اكتساب الهدف.

والآن نأتي إلى إنشاء ملف hello.js، على النحو التالي:

exports.world = function() {
  console.log('Hello World');
}

في المثال أعلاه، hello.js الصادرات بنسبة العالم باعتبارها وحدة واجهة الوصول إلى الكائنات، هذه الوحدة في main.js تحميل عبر تتطلب ( './ مرحبا')، ثم يمكنك الوصول مباشرة إلى أعضاء hello.js الكائن في الصادرات وظيفة.

أحيانا نحن نريد فقط أن حزمة وحدة الكائن، والشكل هو على النحو التالي:

module.exports = function() {
  // ...
}

على سبيل المثال:

//hello.js 
function Hello() { 
	var name; 
	this.setName = function(thyName) { 
		name = thyName; 
	}; 
	this.sayHello = function() { 
		console.log('Hello ' + name); 
	}; 
}; 
module.exports = Hello;

حتى تحصل على وجوه المباشر:

//main.js 
var Hello = require('./hello'); 
hello = new Hello(); 
hello.setName('BYVoid'); 
hello.sayHello(); 

والتغيير الوحيد هو استخدام واجهة module.exports حدة = مرحبا استبدال exports.world = وظيفة () {}. عند الإشارة إلى وحدة خارج، مرحبا الكائن الذي كائن واجهة هو أن تكون المخرجات نفسها، بدلا من صادرات الأصلي.


أين يضع وحدة الخادم

ربما كنت قد لاحظت أننا قد استخدمت في رمز وحدة. مثل هذا:

var http = require("http");

...

http.createServer(...);

نود.جي إس يأتي مع ميزة تسمى "HTTP" وحدة، ونحن نطلب أن يعود قيمة لمتغير محلي في نظامنا.

هذا يقودنا إلى متغير محلي لديه كل الطرق العامة وحدة HTTP توفر كائن.

تتطلب أساليب نود.جي إس الاستراتيجية ملف البحث على النحو التالي:

وبما أن هناك أربعة حدة نمطية للفئة (وحدة الابتدائية وثلاث وحدات ملف) نود.جي إس، على الرغم من أن تحتاج إلى طريقة بسيطة للغاية، ولكن في داخله هو تحميل معقدة جدا، تحميل أولوياتهم مختلفة. كما هو مبين أدناه:

nodejs-تتطلب

تحميل من وحدة ذاكرة التخزين المؤقت الملفات

وعلى الرغم من أولويات مختلفة الوحدة الوطنية وملف الوحدة النمطية، ولكنها لن تأخذ الأسبقية على ملف وحدة تحميل القائمة من وحدة ذاكرة التخزين المؤقت.

تحميل من وحدة الأم

أولوية وحدة الأم بعد وحدة ذاكرة التخزين المؤقت الملفات ذات الأولوية. تتطلب أساليب بعد تحليل اسم الملف، والتحقق من الأولوية ما إذا كانت وحدة في قائمة الوحدة الوطنية. في وحدة المتشعب، على سبيل المثال، على الرغم من وجود ملف HTTP / http.js / http.node / http.json في الدليل، تتطلب ( "HTTP") لن يتم تحميله من الملف، ولكن تحميل من وحدة الأم.

لديها وحدة الأم أيضا منطقة عازلة، وأيضا تحميله بشكل تفضيلي من ذاكرة التخزين المؤقت. إذا لم يتم تحميل المخزن المؤقت من قبل، ثم استدعاء سيتم تحميل تحميل وحدة الأصلي وتنفيذها.

تحميل من ملف

عند عدم وجود الملف في وحدة ذاكرة التخزين المؤقت، وليس وحدة الأم عندما، سوف نود.جي إس تتطلب المعلمات الواردة المنهج التحليلي، وتحميل الملف الفعلي من نظام الملفات، وعملية تحميل تجميع وتفاصيل التعبئة والتغليف في القسم السابق تم عرضه، حيث سنقوم بشرح مفصل لعملية للعثور على وحدة الملف، الذي لديه أيضا بعض التفاصيل يعرف قيمتها.

تتطلب طريقة نقل يقبل المعلمات التالية:

  • المتشعب، خ، المسار، وما إلى ذلك، وحدة الأم.
  • ./mod أو ../mod، النسبية وحدة مسار الملف.
  • / Pathtomodule / وزارة الدفاع، المسار المطلق من وحدة الملف.
  • وزارة الدفاع، غير أصلية وحدة ملف الوحدة النمطية.