1- آیا نحوه دریافت params با استفاده از render props تفاوتی با component render دارد؟
2- در صورتی که یک کامپوننت چند props را دریافت کند چگونه میتوان این از این کامپوننت برای رندر شدن در Route استفاده کرد؟
با تشکر
سلام وقتتون بخیر.
هر دو سوالتون در این جلسه کاملا پاسخ داده میشه . لطفا با دقت این جلسه رو مشاهده کنید .
اگر به مثالهای بیشتر نیاز داشتید میتونید به اینجا مراجعه کنید .
موفق باشید .
علیرضا ایمانی۱۰ آبان ۱۴۰۱، ۱۹:۲۷
یا سلام و احترام
بله سوال اول پاسخ داده شده است اما در مورد سوال دوم باید عرض کنم که هیچ اشاره ای نشده یا شاید اینجانب سوال رو بد مطرح کرده باشم.
فرض کنید که در یک پروژه یک کامپوننتی که به صورت اجباری دو props به نامهای isAdmin و message را دریافت میکند از قبل نوشته شده است (پروژه با ts پیاده سازی شده است)، حالا مجبوریم از این کامپوننت به یکی از حالاتهای گفته شده در Route استفاده کنیم و مجبوریم دو params ارسالی در path رو به عنوان مقادیر isAdmin و message ،برای کامپوننت ارسال کنیم .
در صورتی که امکان تغییر اون کامپوننت رو ندارید میتونید مثلا یه کامپوننت دیگه اضافه بکنید و داخل اون کامپوننت جدید پارامترها رو بگیرید و پاس بدید به اون کامپوننت نهایی که میخواد ازش استفاده بکنید
روشهای زیر هم میشه:
<Route path="/myPage/:isadmin/:message'" component={({ match }) =><MyPagemessage={match.params.message}/>}/>
<Routepath="/myPage/:isadmin/:message'">
{({ match }) => <MyPagemessage={match.params.message}/>}
Route>