Aula 03: Data Binding 📡
Conectando Lógica e Interface
🔄 O que é Data Binding?
É a comunicação entre o seu código TypeScript e o seu template HTML.
Permite que a interface reaja a mudanças nos dados automaticamente.
🔀 Quatro Tipos de Binding
- Interpolação:
{{ valor }}(TS -> HTML) - Property Binding:
[propriedade](TS -> HTML) - Event Binding:
(evento)(HTML -> TS) - Two-way Binding:
[(ngModel)](Sincronizado)
1️⃣ Interpolação
Exibe strings no HTML.
2️⃣ Property Binding
Controla propriedades de elementos HTML.
- Usamos colchetes
[ ]
3️⃣ Event Binding
Captura ações do usuário.
- Usamos parênteses
( )
4️⃣ Two-Way Data Binding
A famosa "Banana in a Box" [( )].
Mantém o campo de input e a variável sincronizados.
🍌 Banana in a Box
Por que esse nome?
[( )] -> Os parênteses (banana) dentro dos colchetes (box).
Requer: FormsModule no AppModule.
⚙️ Como funciona o NgModel?
Se você digita, a variável muda. Se a variável muda via código, o input atualiza!
⚖️ Qual escolher?
- Mostrar texto? -> Interpolação
- Mudar atributo (src, href, class)? -> Property
- Ação de botão? -> Event
- Formulário? -> Two-way
🎯 Desafio Prático
Crie uma calculadora de soma em tempo real!