کاربرد: واسه درک use باید برگردیم به await، یعنی use یه پرامیس میگیره، صبر میکنه تا resolve شه، تو زمان صبر کردن تابع دورش رو suspense میکنه و بعد که نتیجه رسید اون رو نشون میده.
با این تفاوت که async رو نمیتونستیم توی کامپوننت ریکت استفاده کنیم اما use رو میتونیم.
پرامیس ما باید یه استیت یا ممو باشه که با ریرندر دوباره عوض نشه. پس جای این
const [user, setUser] = useState(null)
useEffect(() => {
fetchUser().then(data => setUser(data))
}, [])
میایم و میگیم
const [promise] = useState(() => fetchUser(userId));
const user = use(promise)
یه بخش سوم هم داریم از بقیهی هوک های ریکت، که بعد میذارم براتون.
#react
#next
@persiandn