مفاهیم پایهای در React
در این فصل از آموزش React، به بررسی مفاهیم اصلی و پایهای میپردازیم که درک آنها برای هر توسعهدهندهی React ضروری است. اگر با این مفاهیم بهخوبی آشنا شوید، نوشتن اپلیکیشنهای مدرن و مقیاسپذیر با React برایتان سادهتر خواهد شد.
کامپوننتها، بلوکهای اصلی در React هستند که بخشهای رابط کاربری را میسازند. React به شما اجازه میدهد که این کامپوننتها را بهصورت توابع یا کلاس تعریف کنید:
کامپوننت تابعی (Function Component)
function Welcome(props) {
returnکامپوننت کلاسی (Class Component)
class Welcome extends React.Component {
render() {return
امروزه با معرفی Hooks، استفاده از کامپوننتهای تابعی بسیار رایجتر شده است.
Props (خصوصیات):
دادههایی هستند که از کامپوننت والد به فرزند ارسال میشوند. props فقط قابل خواندن (read-only) هستند و نمیتوان آنها را در کامپوننت فرزند تغییر داد.
function Hello(props) {
returnسلام {props.name}
;
State (وضعیت):
state برای مدیریت دادههای متغیر درون خود کامپوننت استفاده میشود. با استفاده از useState
میتوان بهسادگی state را در کامپوننت تابعی مدیریت کرد.
const [count, setCount] = useState(0);
مدیریت رویدادها مثل کلیک یا تغییر ورودیها در React بسیار ساده است و شباهت زیادی به HTML دارد، ولی با سینتکس جاوااسکریپت:
تابع رویداد را میتوان جداگانه نیز تعریف کرد:
function handleClick() {
console.log('کلیک شد');}
برای نمایش شرطی عناصر در React، میتوان از ساختارهای شرطی مثل if
, &&
یا ? :
استفاده کرد:
{isLoggedIn ?
}
{user && {user.name}
}
زمانی که میخواهید یک آرایه از دادهها را به عناصر JSX تبدیل کنید، متد map
بسیار کاربردی است:
const todos = ['خرید نان', 'مطالعه', 'تمرین'];
return ({todos.map((item, index) => ({item} ))});
در هنگام رندر کردن لیستها، React برای شناسایی بهتر عناصر، به هر عنصر یک Key منحصربهفرد نیاز دارد. استفاده صحیح از key
به React کمک میکند تا تغییرات را بهینهتر اعمال کند و از رندرهای اضافی جلوگیری شود.
{items.map(item => (
{item.name} ))}
استفاده از ایندکس بهعنوان key فقط زمانی مناسب است که ترتیب عناصر تغییری نکند.
در این بخش مفاهیم بنیادین React مثل انواع کامپوننتها، مدیریت داده با props و state، رویدادها، رندر شرطی و کار با لیستها را یاد گرفتیم. این دانش، پایهای قوی برای ادامه مسیر شما در دنیای React فراهم میکند.
برای شخصیسازی محتوا و تبلیغات، کوکیها و فناوریهای مشابه در سایتهای ما استفاده میشوند. میتوانید جزئیات بیشتر را پیدا کنید و تنظیمات شخصی خود را در زیر تغییر دهید. با کلیک بر روی "باشه" یا با کلیک بر روی هر محتوایی در سایتهای ما، شما با استفاده از این کوکیها و فناوریهای مشابه موافقت میکنید.
When you visit any of our websites, it may store or retrieve information on your browser, mostly in the form of cookies. This information might be about you, your preferences or your device and is mostly used to make the site work as you expect it to. The information does not usually directly identify you, but it can give you a more personalized web experience. Because we respect your right to privacy, you can choose not to allow some types of cookies. Click on the different category headings to find out more and manage your preferences. Please note, that blocking some types of cookies may impact your experience of the site and the services we are able to offer.