Olá pessoal, eu não consegui entender em que momento usamos @output e @input. Tem como explicar de forma mais clara?
Olá pessoal, eu não consegui entender em que momento usamos @output e @input. Tem como explicar de forma mais clara?
Olá, Alan! Tudo bem?
@Output
e @Input
são o que chamamos no TypeScript de decorators, métodos especiais que podem encapsular um dado para dar funcionalidades adicionais.
No caso desses decorators, pegamos variáveis simples e transformamos em variáveis que transmitem dados via componentes. Sendo dois tipos:
@Input
: o componente receberá o dado através do seu componente-pai, ou seja, o valor é passado para ele.@Output
: o componente emite um evento para o componente-pai, podendo ou não conter um dado, ou seja, o valor é passado dele para o pai.Basicamente você vai usar para trabalhar com componentes que precisam manipular propriedades que estão no componente-pai, e não nele. Se for para fazer a leitura de uma propriedade do componente-pai, fará @Input
, e se for uma escrita (mudar o valor), vai ser o @Output
que será escutado no componente-pai, e lá você constrói a lógica para alterar o valor.
Espero ter ajudado!