Ионная 4: ngOnInit против ionViewWillEnter - PullRequest
0 голосов
/ 21 января 2019

Что лучше использовать крючки Angular Lifecycle Hook или Ionic Lifecycle специально для инициализации при создании гибридного приложения с использованием Ionic 4?

Угловой крюк жизненного цикла - ngOnInit

ngOnInit() {
    this.getData();
}

Ионный крючок жизненного цикла- ionViewWillEnter

ionViewWillEnter() {
    this.getData();
}

Ответы [ 3 ]

0 голосов
/ 01 марта 2019

ionViewWillEnter - срабатывает при входе на страницу (даже если она вернулась из стека)

ngOnInit не сработает, если вы вернетесь на страницу после помещения ее в стек

я думаю, что лучше один раз ionviewwillenter

0 голосов
/ 04 апреля 2019

В Ionic 4 События жизненного цикла такие же, как и угловые события жизненного цикла.Ionic 3 События жизненного цикла здесь не работают.

Для инициализации вы должны использовать

ngOnInit()

Если вы хотите после инициализации просмотра,

Пожалуйста, измените

ionviewwillenter

до

ngAfterViewInit()

Это будет работать отлично.

0 голосов
/ 21 января 2019

В руководстве по миграции Ionic 4 это выглядит так:

С V4 мы теперь можем использовать типичные события, предоставляемые Угловой. Но в некоторых случаях вы можете захотеть получить доступ к события запускаются, когда компонент завершает анимацию во время своего маршрута менять. В этом случае ionViewWillEnter, ionViewDidEnter, ionViewWillLeave и ionViewDidLeave были перенесены из V3. Используйте эти события для координации действий с собственной анимацией Ionic система.

Таким образом, суть в том, чтобы предпочел угловые крючки жизненного цикла , например, ngOnInit, если это возможно. Единственное реальное исключение - работа с системой анимации Ionics, например, проверка того, завершил ли компонент ввод анимации.

...