From c9e9d25a245f63fb1a91daa68387fbf58c3415e8 Mon Sep 17 00:00:00 2001 From: kabrunko-dev Date: Tue, 23 Jan 2024 08:41:00 -0300 Subject: [PATCH] docs(pt): translate challenge 32 --- .../docs/pt/challenges/angular/32-bug-cd.md | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 docs/src/content/docs/pt/challenges/angular/32-bug-cd.md diff --git a/docs/src/content/docs/pt/challenges/angular/32-bug-cd.md b/docs/src/content/docs/pt/challenges/angular/32-bug-cd.md new file mode 100644 index 000000000..dc0e58235 --- /dev/null +++ b/docs/src/content/docs/pt/challenges/angular/32-bug-cd.md @@ -0,0 +1,37 @@ +--- +title: 🟠 Bug na Detecção de Mudanças +description: Desafio 32 é sobre debuggar uma aplicação que tem um problema quando a detecção de mudanças é disparada +author: thomas-laforge +challengeNumber: 32 +command: angular-bug-cd +blogLink: https://medium.com/ngconf/function-calls-inside-template-are-dangerous-15f9822a6629 +sidebar: + order: 105 +--- + +:::note[Nota] +Este desafio é inspirado por um exemplo real que eu simplifiquei para criar um desafio legal. +::: + +## Informação + +Neste pequena aplicação, nós temos um menu de navegação que roteia nossa aplicação ou para `BarComponent` ou para `FooComponent`. No entanto, a aplicação não está carregando e os erros não são mostrado dentro do console. + +## Declaração + +O objetivo do desafio é debuggar a aplicação e fazer ela funcionar. + +## Dicas + +
+ Dica 1 + + Se você comentar `routerLinkActive="isSelected"` dentro de `NavigationComponent`, a aplicação carregará corretamente. +
+ +
+ Dica 2 + +Se você abrir o [código-fonte de `RouterLinkActive`](https://github.com/angular/angular/blob/main/packages/router/src/directives/router_link_active.ts) e ir na **linha 196**, verá que o Angular chama `this.cdr.markForCheck` dentro de uma microTask, na qual dispara um novo ciclo de detecção de mudanças (CD). Se você comentar essa linha, a aplicação carrega novamente, mas o bug não é dentro do framework Angular. 😅😯 + +