شما همنین می توانید با استفاده از NPM ماژول ساخته شده به صورت محلی (لوکال) در اپلیکیشن خود را در اختیار همه قرار دهید تا بتوانند از کدهای شما درون اپلیکیشن های خود استفاده کنند.
به عنوان مثال هنگامی که شما نیاز دارید تا با پایگاه داده MongoDB ارتباط برقرار کنید میتوانید یک ماژول برای این عملیات بنویسید تا در آینده هر زمان که نیاز داشتید تا با پایگاه داده خود ارتباط برقرار کنید با صدا زدن آن از نوشتن کدهای تکراری خودداری کنید. ( MongoDB یک پایگاه داده محبوب برای استفاده به همراه Node.js است.)
نوشتن یک ماژول ساده در Node.js
بگذارید با هم یک ماژول ساده را بسازیم که میتواند پیغام های خطا، اخطاریه ها یا اطلاعات دیگر را درون کنسول به نمایش درآورد.
در Node.js بهتر است که ماژول درون یک فایل جاوا اسکریپت متفاوت قرار داشته باشد. پس بگذارید ابتدا فایل Log.js
را ایجاد کنیم که قرار است پذیرای ماژولی باشد که ما می نویسیم.
فایل Log.js
را در سیستم خود ایجاد کنید و محتوای زیر را درون آن کپی کنید:
var log = {
info: function (info) {
console.log('Info: ' + info);
},
warning:function (warning) {
console.log('Warning: ' + warning);
},
error:function (error) {
console.log('Error: ' + error);
}
};
module.exports = log
فصل 7 – مثال 1
مثال بالا همانطور که می بینید در Object تعریف شده به نام log
ما از سه فانکشن تعریف کرده ایم به نام های info()
، warning()
و error()
که اطلاعات خاصی را درون کنسول نمایش می دهند.
در نهایت ما با استفاده از module.exports
این ماژول را به محدوده گلوبال وارد کرده ایم.
module.exports
کدهای نوشته شده ما را به عنوان یک ماژول به سیستم معرفی می کند.
module.exports
یک Object خاص است که در تمامی فایل های Node.js به طور پیش فرض وارد می شود.
هرگاه که خواستید یک Object، فانکشن یا متغیر را به عنوان یک ماژول به Node.js معرفی کنید می توانید از module.exports
یا exports
استفاده کنید.
حالا نحوه استفاده از ماژولی که برای نوشتن لاگ ساخته ایم را نشان خواهیم داد.
استفاده از یک ماژول لوکال در Node.js
برای لود ماژول های لوکال در Node.js به همان صورت که در ماژول های هسته عمل می کردیم از فانکشن require()
استفاده می کنیم. گرچه شما باید در پرانتز اینجا مسیر فایل جاوا اسکریپت ماژول را وارد کنید.
مثال زیر نشان می دهد که چگونه می توانید ماژول ساخته شده برای لاگ را در اپلیکیشن خود استفاده کنید. به نحوه فراخوانی فایل Log.js
توجه کنید (این کدها را در app.js
قرار دهید):
var myLogModule = require('./Log.js');
myLogModule.info('Node.js started');
فصل 7 – مثال 2
در مثال بالا، فایل app.js
از ماژول لاگی که نوشتیم استفاده می کند.
ابتدا در این فایل با استفاده از فانکشن require()
ماژول لاگ فراخوانی شده. در بین پرانتز به این فانکشن مسیر قرار گرفتن فایل این ماژول را ارائه شده است.
اگر دقت کنید قبل از اسم فایل نقطه و اسلش قرار گرفته است. ./
درواقع به همان فولدر که درون آن هستیم اشاره دارد.
به علت اینکه ماژول لاگ یک object باز می گرداند متغیر myLogModule
برابر آن object قرار خواهد گرفت.
اکنون میتوان با استفاده از نام متغیر هر کدام از فانکشن هایی که درون این ماژول قرار دارد را به سادگی صدا زد و از کارکرد آنها استفاده نمود. به عنوان مثال: myLogModule.info()
یا myLogModule.warning()
یا myLogModule.error()
برای اجرای مثال بالا می توانید در محیط ترمینال یا CMD دستور node app.js
را تایپ کرده و اینترنت بزنید. (دقت کنید که در محیط ترمینال ابتدا باید با دستور cd به مکانی که فایل را ساخته اید نقل مکان کنید.)
پس از اجرای مثال بالا، متن Info: Node.js started را در محیط ترمینال مشاهد خواهید کرد.
تیکه دوم کدها مشکل داره فک کنم دوست عزیز همون قسمت اول رو نوشتین که
سلام دوست عزیز، بله حق با شماست، قسمت دوم کدش اشتباست.
ویرایش شد. خیلی ممنونم.