developer
7 سال پیش توسط developer مطرح شد
1 پاسخ

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

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


ثبت پرسش جدید
حسام موسوی
تخصص : طراح و برنامه نویس
@hesammousavi 7 سال پیش مطرح شد
6

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

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

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

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

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

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