• بخش 9 – آموزش Node.JS ، Exports
بخش 9 – آموزش Node.JS ، Exports
1395/03/18 - 12:35:45 // Node.js // 0 نظر // 265 بازدید

همانطور که قبلن گفتیم ، هر فایل در Node.js یک ماژول می باشد . آیتم هایی که قصد صادر کردن آن ها را از یک ماژول داریم باید به متغیر module.exports نسبت داده شوند . این مهم است که بدانید module.exports در واقع به یک ماژول خالی در هر فایل تعریف می گردد .

بخش 9 – آموزش Node.JS ، Exports

برای درک بیشتر require ، نگاهی عمیق تر به module.exports می اندازیم .

Module.exports

همانطور که قبلن گفتیم ، هر فایل در Node.js یک ماژول می باشد . آیتم هایی که قصد صادر کردن آن ها را از یک ماژول داریم باید به متغیر module.exports نسبت داده شوند . این مهم است که بدانید module.exports در واقع به یک ماژول خالی در هر فایل تعریف می گردد .

Export Alias

تا کنون ما تنها یک شیء منفرد را از یک ماژول export نمودیم . اما گاهی نیاز داریم که گاهی بیشتر از یک متغیر از ماژول را export نماییم . یکی از راه ها این است که یک شیء جدید ساخته و آن را به module.export اختصاص دهیم .

بهرحال ، مدیریت این کار کمی سنگین بنظر می رسد ، چرا که بازگشتی های ماژول می تواند بطور بالقوه از آنچه که ماژول در بر دارد فاصله داشته باشد . در کدهای بالا تابع a بسیار زودتر از زمانی که ما میخواهیم آن را export کنیم تعریف شده است . بنابراین طبق یک قرارداد معمول می توانیم با استفاده از Module.exports همانطور که در زیر خواهید دید ، کار export را به نحوی دیگر انجام دهیم .

شاید تایپ module.export کار سختی باشد ، بنابراین Node.js به ما کمک می کند تا با اختصار به جای نوشتن modul.exports از exports خالی استفاده نماییم . مانند مثال زیر :

این مهم است که بدانید exports نیز مانند سایر متغیرهای جاوا اسکریپت می باشد . Node.js برای ما module.exports را به exports ساده کرده است . اگر شما چیزی را به آن اضافه کنید ( بطور مثال exports.foo=123; ) آن گاه این دستور معادل modul.exports.foo=123; می باشد . اگر شما دستوری معادل exports=123; بنویسید شما اشاره به module.exoprts راشکسته اید . و این دستور به module.exports اشاره نخواهد کرد . بنابراین بسیار مهم است که بدانید شما باید از از اسم مستعار exports برای اشاره به چیزی استفاده نمایید و نباید از آن مستقیمن استفاده کنید . اگر میخواهید از خود exports استفاده کنید باید آن را بصورت module.exports بنویسید .

شاد و سلامت باشید

محمد جعفری فوتمی

محمد جعفری فوتمی
معرفی نویسنده : محمد جعفری فوتمی

از سال 1382 بطور تخصصی در زمینه ی طراحی وب سایت کار کرده ام و در طی 12 سال گذشته تجربیاتی را کسب کرده ام که در هیچ کتاب و منبع آنلاینی یافت نمی شود ، تصمیم گرفته ام تا این تجربیات را در قالب مقالاتی به اشتراک بگذارم . امیدوارم مفید واقع شود .

امتیاز به مطلب
           
نظرات کاربران
ارسال نظر