Parastoo Ebrahimi
4 سال پیش توسط Parastoo Ebrahimi مطرح شد
3 پاسخ

داشتن یوز استیت با اسم داینامیک در هوک ها

سلام. من وقتی میخواستم توی کلاس کامپوننت ها اسم استیتم داینامیک باشه و اون رو مقدار دهی کنم اینجوری عمل میکردم :

 this.setState({ [property]: newVal })
}

حالا برای اینکه همین موضوع رو توی فانکشن کامپوننت ها داشته باشم نمیدونم باید چیکار کنم. ممنون میشم کمکم کنید
@hesammousavi
@kamran.davar


ثبت پرسش جدید
مهدی عقیقی
تخصص : برنامه نویس وب
@MehdiAghighi 4 سال پیش مطرح شد
1

@parastooebrahimi سلام وقتتون بخیر.

یک استیت تعریف کنید و توش یک آبجکت باشه مثل زیر:

const [state, setState] = useState({})

حالا هر موقع خواستید با کی داینامیک چیزی رو عوض کنید:

setState({ [property]: newVal })

یعنی در واقع برای این کار باید همه ی استیت ها رو بریزید توی یک آبجکت نه این که چند useState تعریف کنید.


کامران داور
تخصص : Front-end developer
@kamran.davar 4 سال پیش مطرح شد
0

یعنی اگه چند usestate داشته باشیم کار نمیکنه؟ به نظر منطقی نمیاد @MehdiAghighi @parastooebrahimi


مهدی عقیقی
تخصص : برنامه نویس وب
@MehdiAghighi 4 سال پیش مطرح شد
0

@kamran.davar وقتی چند useState داشته باشید یعنی برای هر کدوم یک فانکشن setState دارید یعنی برای عوض کردن هر کدوم باید یک فانکشن صدا کنید.

پس اگر بخوایم اون کارو بکنیم باید یک فانکشن رو به صورت دانامیک صدا کنیم که به نظرم اینی که بالا گفتم خیلی منطقی تره.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام