• 1397/10/11

تابع setState() در ری اکت :

سلام استاد روز به خیر . میشه یه خورده بیشتر در مورد پارامتری که توی تابع setState دادید، توضیح بدید ؟ . چون آخه توی اون مثال ساعت ما تابعی واسه تغیر استیت تعریف نکردیم . توی سایت اصلی ری اکت هم متوجه نشدم .

https://reactjs.org/docs/react-component.html#setstate

 

خیلی ممنونم

  • 1397/10/11
  • ساعت 18:46

سلام دوست من

اول کار یک مقدار به نظر پیچیده میاد فهم مقدار دهی State و Update

ما گفتیم که نباید به صورت مستقیم بیایم State رو بروز رسانی کنیم بجاش میایم از setState استفاده میکنیم که در دسترس ما هست و تنها کاری که setState انجام میده به React میگه که state این کامپوننت تغییر کرد و React دوباره رندر میکنه این کامپوننت تا به نمایش در بیاد.

setState یک درخواست هست برای بروز رسانی state .

در جلسه چندم هست این مثالی که انجام دادیم؟

 


  • 1397/10/11
  • ساعت 18:50

سلام . در جلسه ی 14 استاد . بله اون رو به خوبی توضیح دادید متوجه شدم . ولی مشکل من روی اون پارامتری بود که به شکل تابع بهش دادید . ری اکت از کجا میاد مقدار قبلی استیت رو توی اون پارامتری که شما توی تابع تعریف کردید بزاره ؟ ( اسمه پارامتره prevstate بود که گفتید مقدار قبلی استیت توی این هست و هربار معکوس میشه) . داخل سایت ری اکت یک پارامتر دیگه هم همون props هست . اون رو هم میشه توضیح بدید ؟

خیلی ممنونم از آموزش خوبتون


  • 1397/10/11
  • ساعت 19:14

خوب یک نفس عمیییییییق :D

خوب ما یک کلید داریم در آبجکتی که به State دادیم به نام isToggleON که مقدار ایشون true هست .

حالا ما میخوایم که وقتی روی دکمه کلیک کردیم اگر True بود مقدار isToggleOn بشه false رو به همین صورت false بود بشه true

که اومدیم یک متد تعریف کردیم که اینکارو برامون انجام میده که توسط setState ما با prevState میتونیم مقدار state قبل از تغییرش رو داشته باشیم اوکی؟!

خوب مثلا مقدار isToggleOn برابر true هست حالا کاری که ما انجام دادیم گفتیم که مقدار stateرو بگیر منفیش کن با ! و درخواست تغییرشو ارسال کن همین  و prevState چیزی نیست جز پارامتری که حاوی مقدار state هست .

اگر بازم هضم نشد بگو بهتر تر توضیح بدیم :D


logo-samandehi