React ES6 Modules
🔹 React ES6 Modules (ماژولها در React و ES6)
در این درس یاد میگیری ماژولها (Modules) در جاوااسکریپت و React چی هستن، چرا استفاده میشن، و چطور باید با export
و import
کار کرد.
🔸 مفهوم ماژول در جاوااسکریپت
ماژولها یعنی تقسیم کد به فایلهای جداگانه تا هر فایل فقط مسئول بخشی از برنامه باشه.
این کار باعث میشه کد تمیزتر، قابل نگهداریتر و قابل استفاده مجدد (reusable) بشه.
در React و ES6، هر فایل جاوااسکریپت به صورت پیشفرض یک ماژول مستقل است.
🔹 مثال ساده از ماژولها
فرض کن یک فایل به نام person.js
داری:
و در فایل دیگر به نام app.js
:
📌 با export
متغیرها را از یک فایل خارج میکنی،
و با import
در فایل دیگر استفاده میکنی.
🔹 انواع Export
در ES6 دو نوع export
داریم:
1. Named Export (خروجی نامدار)
برای خروج چند متغیر یا تابع از یک فایل استفاده میشه.
📥 Import در فایل دیگر:
✅ میتونی فقط برخی از خروجیها رو هم import کنی:
2. Default Export (خروجی پیشفرض)
اگر بخوای فقط یک مقدار اصلی از فایل صادر بشه، از export default
استفاده میکنی.
📥 Import در فایل دیگر:
✅ نکته: در default export
نیازی نیست از { }
استفاده کنی.
🔹 ترکیب Named و Default Export
ممکنه بخوای هر دو نوع خروجی در یک فایل داشته باشی:
📥 Import در فایل دیگر:
🔹 استفاده از ماژولها در React
در React، هر کامپوننت معمولاً در یک فایل جدا ذخیره میشه و با export
و import
مدیریت میشه.
📥 در فایل App.js:
📌 این ساختار یکی از پایههای اصلی React است.
🔹 مثال با Named Export در React
📥 در App.js:
🔹 تغییر نام هنگام Import
میتونی نام خروجیها رو هنگام import تغییر بدی:
📌 این روش زمانی مفیده که چند متغیر با نام مشابه داری.
🔹 Import همهی خروجیها با *
میتونی تمام خروجیهای یک فایل رو با یک اسم وارد کنی:
📌 حالا تمام مقادیر export شده به صورت یک آبجکت person
در دسترس هستن.
✅ نکتهها
مفهوم | توضیح |
---|---|
export | برای خروج متغیر، تابع یا کلاس از فایل |
import | برای وارد کردن مقادیر از فایل دیگر |
Named Export | چند خروجی در یک فایل |
Default Export | فقط یک خروجی اصلی |
ترکیب هر دو | بله، امکانپذیر است |
کاربرد در React | تعریف و استفاده از کامپوننتها |
✅ خلاصه
نوع خروجی | دستور Export | دستور Import | توضیح |
---|---|---|---|
Named | export { a, b } | import { a, b } | چند مقدار در یک فایل |
Default | export default item | import item | یک خروجی اصلی |
همهی مقادیر | import * as obj from "./file.js" | استفاده با obj.name | وارد کردن همه خروجیها |
✅ نتیجه
ماژولها (Modules) در ES6 و React باعث میشن کدها:
-
قابل مدیریتتر و تمیزتر بشن،
-
به راحتی در پروژههای بزرگ سازماندهی بشن،
-
و هر بخش از برنامه در فایل خودش تعریف بشه.