1
resposta

O que é e em que momento uso @Output e Input??? :(

Olá pessoal, eu não consegui entender em que momento usamos @output e @input. Tem como explicar de forma mais clara?

1 resposta

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!