NativeScript распознает, полностью ли отображается страница

Как можно распознать, что страница NativeScript полностью отображается и видна пользователю? Лучше всего будет метод, в котором я могу вызвать в нем метку времени/console.log. NativeScript поставляется в двух вариантах: NS Core и NS Angular. Я не совсем уверен, соответствует ли это этому?

Для NS/Cores: обработчик события загрузки страницы.

    function pageLoaded(){
      console.log()
    }           
   <Page loaded="pageLoaded">

https://docs.nativescript.org/cookbook/ui/page

Для NS/Angular: ngOnInit

    ngOnInit(){
      console.log()
    }

https://docs.nativescript.org/tutorial/ng-chapter-4




Ответы (1)


Для Angular я бы предпочел использовать ngAfterViewInit, а не ngOnInit. ngOnInit слишком рано для завершения всего, что связано с NativeScript, подробнее о хуках жизненного цикла Angular здесь< /а>. На самом деле даже в ngAfterViewInit некоторые вещи, такие как привязки Angular, могут быть еще не полностью разрешены, поэтому случай, когда этот хук не на 100% безопасен, поскольку 100% страницы и ее содержимого были инициализированы.

Насколько мне известно, нет единого обратного вызова, который вы можете использовать, чтобы сообщить вам, когда вся страница + ее содержимое загружены, поскольку они являются отдельными элементами. Вам, вероятно, придется использовать каждый элемент на этой странице, который, как вы хотите знать, был загружен, и отдельно прикрепить к нему свой обратный вызов loaded.

person Vladimir Amiorkov    schedule 20.06.2017