پرسش

سه نقطه داخل ری‌اکت چه کاری انجام میده؟ (React JS)

What are these three dots in React doing?

سلام, من یه سوالی دارم.
من تازه با ری‌اکت کار می‌کنم و توی یه کدی که دیدم، از سه نقطه (...) استفاده شده بود. اما دقیقاً نمی‌دونم این سه نقطه چه کاری انجام میده.
این سه نقطه دقیقاً کجا کار میاد و چه استفاده‌هایی داره؟ ممنون می‌شم اگر کمکم کنید که بهتر بفهمم چطور باید ازش استفاده کنم.

پاسخ
محمدامین سعیدی راد
بیوگرافی محمدامین سعیدی راد

درود دوست عزیز, اون سه نقطه‌ای که توی کد ری‌اکت می‌بینی، همون "Spread Operator" جاوااسکریپته که برای باز کردن محتوای آرایه‌ها و آبجکت‌ها استفاده می‌شه. اما بذار به طور خلاصه نحوه استفاده از سه نقطه (...) داخل ری‌اکت رو برات توضیح بدم.

استفاده در props:

یکی از کاربردهای اصلی این سه نقطه توی ری‌اکت، ارسال props به کامپوننت‌ هاست. فرض کن یه کامپوننت داری که یه سری props می‌گیره و می‌خوای همه‌ی این props‌ها رو به یه کامپوننت دیگه هم ارسال کنی:

const stylesProps = { color: 'green', size: 'large' };
<SabzComponent {...stylesProps} />;

اینجا، stylesProps... باعث می‌شه که همه‌ی props‌ هایی که توی stylesProps هستن (مثل color و size) به SabzComponent منتقل بشن. این کار می‌تونه کد تو رو تمیزتر و خواناتر کنه.

استفاده در state:

همچنین این سه نقطه برای به‌روزرسانی state هم خیلی مفیده. فرض کن که می‌خوای بخشی از state رو به‌روز کنی اما بقیه‌ی state دست‌نخورده باقی بمونه:

this.setState(prevState => ({
...prevState,
newProperty: 'newValue'
}));

اینجا prevState... باعث می‌شه که همه‌ی مقدارهای قبلی state حفظ بشن و فقط اون بخشی که تغییر کرده (یعنی newProperty) جایگزین بشه.

جمع‌بندی:

این سه نقطه توی ری‌اکت خیلی کاربردیه و بهت کمک می‌کنه تا کدت رو به شکل بهینه‌تر و خواناتری بنویسی. چه برای مدیریت props و چه برای state، استفاده از Spread Operator یه روش عالیه.

امیدوارم مفید و مورد استفاده قرار بگیره!

پاسخ: 1403/05/21
آخرین آپدیت: 1403/07/05