Carregamento adiado com @defer
Carregue seções do modelo sob demanda com @defer.
Carregamento adiado com @defer é uma aula grátis de Angular Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Angular Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Angular Academy inclui 4 aulas no total.
Carregamento adiado com defer
O bloco at-defer carrega de forma tardia parte de um modelo e suas dependências, melhorando o desempenho do carregamento inicial. O conteúdo adiado é dividido em um bloco separado.
Sintaxe básica de defer
Coloque o conteúdo dentro de um bloco at-defer. Por padrão, ele é carregado quando o navegador está ocioso.
// @defer {
// <app-heavy-chart></app-heavy-chart>
// }Por que adiar
Adiar componentes pesados ou que ficam abaixo da área visível mantém o pacote inicial pequeno e a primeira renderização rápida. O componente é carregado somente quando realmente necessário.
O bloco placeholder
Um bloco at-placeholder exibe o conteúdo antes de o bloco adiado ser acionado.
// @defer {
// <app-comments></app-comments>
// } @placeholder {
// <p>Comments will load soon</p>
// }O bloco de carregamento
Um bloco at-loading é exibido enquanto o trecho adiado está sendo buscado.
// @defer {
// <app-comments></app-comments>
// } @loading {
// <p>Loading comments...</p>
// }O bloco de erro
Um bloco at-error é renderizado se o carregamento das dependências adiadas falhar.
// @defer {
// <app-comments></app-comments>
// } @error {
// <p>Failed to load comments</p>
// }Acionadores
Você controla quando o carregamento começa usando acionadores em uma cláusula on, como on idle, on viewport, on interaction, on hover ou on timer.
// @defer (on viewport) {
// <app-chart></app-chart>
// }on viewport
O acionador on viewport carrega o conteúdo quando ele entra na área visível, sendo perfeito para seções abaixo da dobra.
on interaction e on hover
on interaction carrega o conteúdo quando o usuário clica no marcador de posição ou o focaliza; on hover carrega quando o ponteiro passa sobre ele.
// @defer (on interaction) {
// <app-editor></app-editor>
// } @placeholder {
// <button>Open editor</button>
// }A condição when
Você também pode usar when para acionar o carregamento com base em uma expressão booleana, carregando o conteúdo quando a expressão se torna verdadeira.
// @defer (when shouldLoad()) {
// <app-details></app-details>
// }Pré-busca
Você pode fazer a pré-busca do trecho adiado separadamente da renderização; por exemplo, usar prefetch on idle para que ele esteja pronto antes de o acionador de renderização ser executado.
// @defer (on viewport; prefetch on idle) {
// <app-chart></app-chart>
// }Verificação rápida: defer
Acionamento de conteúdo adiado.
Recapitulação: carregamento adiado
Você aprendeu a usar o bloco at-defer para carregamento sob demanda, com os blocos at-placeholder, at-loading e at-error, além de acionadores como on idle, on viewport, on interaction, on hover, on timer e when, juntamente com a pré-busca. Você concluiu o curso Fluxo de controle integrado.
Perguntas Frequentes
A aula “Carregamento adiado com @defer” é grátis?
Sim — o texto completo de “Carregamento adiado com @defer” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Angular Academy, atualize para CoddyKit PRO. O curso de Angular Academy inclui 4 aulas no total.
O que vou aprender em “Carregamento adiado com @defer”?
Carregue seções do modelo sob demanda com @defer. Você pratica Angular Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Angular Academy?
Nenhuma experiência prévia é necessária. Angular Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Carregamento adiado com @defer”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Angular Academy?
Sim. Cada aula de Angular Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Renderização condicional com @if
- Repetição com @for
- Alternância com @switch
- Carregamento adiado com @defer