Angular2, как инициализировать компонент, когда он становится видимым
На веб-странице, которую я хочу создать, должно быть много блоков (компоненты angular2). Поэтому я хочу инициализировать только пару из них (которые будут видны с самого начала), а другие будут инициализированы позже (например, при прокрутке пользователя, поэтому я сохраню вызов по сети, который загружает данные, и рендеринг страницы будет намного Быстрее).
Это что-то вроде AMP (я знаю, что AMP и Angular2 совершенно разные). Например, на странице https://www.bucketlist127.com/blog/ideas-for-bucket-list изображения загружаются, когда пользователь прокручивает страницу, что делает страницу намного меньше (очень важно для мобильных устройств).
Я пытался перехватить событие, когда компонент становится видимым, но, похоже, для этого нет собственного события angular2 (ngOnInit, ngOnDestroy, ngDoCheck, ngOnChanges, ngAfterContentInit, ngAfterContentChecked, ngAfterViewInit, ngAfterViewChecked)
Вопрос в том, есть ли хорошая практика для этого?
1 ответ
Я бы сказал, что после onOnInit, если вы прослушиваете какое-либо событие после этого, например, ngAfterViewInit и..., вы можете быть уверены, что ваше представление является видимым, если нет каких-либо препятствий, таких как класс css или что-то еще.