Odroczone ładowanie za pomocą @defer
Leniwie ładuj sekcje szablonu za pomocą @defer.
Odroczone ładowanie za pomocą @defer to bezpłatna lekcja Angular Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Angular Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Angular Academy zawiera 4 lekcji w sumie.
Odroczone ładowanie za pomocą defer
Blok at-defer ładuje leniwie część szablonu wraz z zależnościami, poprawiając wydajność początkowego ładowania. Odroczona zawartość jest dzielona na osobny chunk.
Podstawowa składnia defer
Zawartość należy umieścić w bloku at-defer. Domyślnie zostanie on załadowany, gdy przeglądarka będzie bezczynna.
// @defer {
// <app-heavy-chart></app-heavy-chart>
// }Dlaczego defer
Odroczenie ładowania ciężkich komponentów lub komponentów znajdujących się poniżej pierwszego ekranu pozwala zmniejszyć początkowy bundle i przyspieszyć pierwsze renderowanie. Komponent zostanie załadowany dopiero wtedy, gdy będzie rzeczywiście potrzebny.
Blok placeholder
Blok at-placeholder wyświetla zawartość, zanim zostanie uruchomiony blok odroczony.
// @defer {
// <app-comments></app-comments>
// } @placeholder {
// <p>Comments will load soon</p>
// }Blok ładowania
Blok at-loading jest wyświetlany podczas pobierania odroczonego fragmentu.
// @defer {
// <app-comments></app-comments>
// } @loading {
// <p>Loading comments...</p>
// }Blok błędu
Blok at-error jest renderowany, jeśli pobranie zależności odroczonego fragmentu zakończy się niepowodzeniem.
// @defer {
// <app-comments></app-comments>
// } @error {
// <p>Failed to load comments</p>
// }Wyzwalacze
Moment rozpoczęcia ładowania można kontrolować za pomocą wyzwalaczy w klauzuli on, takich jak on idle, on viewport, on interaction, on hover lub on timer.
// @defer (on viewport) {
// <app-chart></app-chart>
// }on viewport
Wyzwalacz on viewport ładuje zawartość, gdy pojawi się ona w obszarze widoku podczas przewijania. Doskonale sprawdza się w sekcjach znajdujących się poniżej widocznej części strony.
on interaction i on hover
on interaction ładuje zawartość, gdy użytkownik kliknie element zastępczy lub przeniesie na niego fokus, a on hover — gdy wskaźnik znajdzie się nad tym elementem.
// @defer (on interaction) {
// <app-editor></app-editor>
// } @placeholder {
// <button>Open editor</button>
// }Warunek when
Można również uruchamiać ładowanie na podstawie wyrażenia logicznego za pomocą when. Ładowanie rozpocznie się, gdy wyrażenie przyjmie wartość true.
// @defer (when shouldLoad()) {
// <app-details></app-details>
// }Wstępne pobieranie
Odroczony fragment można pobrać wstępnie niezależnie od renderowania, na przykład za pomocą prefetch on idle, aby był gotowy, zanim zadziała wyzwalacz renderowania.
// @defer (on viewport; prefetch on idle) {
// <app-chart></app-chart>
// }Szybkie sprawdzenie: defer
Uruchamianie odroczonej zawartości.
Podsumowanie: odroczone ładowanie
Poznali Państwo blok at-defer używany do leniwego ładowania, a także bloki at-placeholder, at-loading i at-error oraz wyzwalacze, takie jak on idle, on viewport, on interaction, on hover, on timer i when, a także wstępne pobieranie. Ukończyli Państwo kurs Built-in Control Flow.
Często zadawane pytania
Czy lekcja „Odroczone ładowanie za pomocą @defer” jest bezpłatna?
Tak — pełny tekst „Odroczone ładowanie za pomocą @defer” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Angular Academy, przejdź na CoddyKit PRO. Kurs Angular Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Odroczone ładowanie za pomocą @defer”?
Leniwie ładuj sekcje szablonu za pomocą @defer. Ćwiczysz Angular Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Angular Academy?
Nie wymagamy żadnego doświadczenia. Angular Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Odroczone ładowanie za pomocą @defer”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Angular Academy?
Tak. Każda lekcja Angular Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Warunkowe renderowanie za pomocą @if
- Pętle za pomocą @for
- Przełączanie za pomocą @switch
- Odroczone ładowanie za pomocą @defer