راکت
حل شده

چرخه حیات ری اکت

1 پاسخ

توی ری اکت نیتیو کجا باید از componentWillMount و کجا باید از componentDidMount استفاده کنیم؟ فرقشون چیه در عمل؟

developer
developer
@developer
ثبت پرسش جدید

پاسخ‌ها

1
حسام موسوی
حسام موسوی
@hesammousavi

تخصص: طراح و برنامه نویس

بهترین پاسخ

ببینید componentWillMount کاملا شبیه به متد سازنده یک کلاسه یعنی constructor زمانی که component بوجود میاد صدا زده میشه و هیچ نقشی در re-render کردن ویو شما نمیتونه داشته باشه چون همونطور که گفتم قبل از همه چیز مثل constructor صدا زده میشه .
مثلا شما میخواید زمان ساخت یک کامپوننت رو ذخیره سازی کنید . از کد زیر استفاده میکنید

componentWillMount() {
  this.setState({ todayDate: new Date(Date.now())});
}

اما زمانی که بخواید زمانی که کامپوننت شما ایجاد شد هر چند ثانیه اطلاعاتی رو از سرور بگیره و view های شما دوباره render بشه از componentDidMount استفاده میکنید به همین سادگی . کد زیر رو ببینید

componentDidMount() {
  this.interval = setInterval(this.fetchNews, 3600000);
}

شاید پاسخ شما همین‌جا باشد

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

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