1
resposta

erro no componet/nova-transferencia.components.ts

Olá, tudo bem ?

meu código essa dando erro no @Output que eu não sei o motivo verifiquei nos modulos algum import que deixei pra tras mas não encontrei. Segue código abaixo do component/nova-trasnferencia.component.ts:

import { Component, Output } from "@angular/core";
 import { EventEmitter } from "stream";

@Component({
    selector: 'app-nova-transferencia',
    templateUrl: './nova-transferencia.component.html',
    styleUrls:['./nova-transferencia.component.scss'],
})
export class NovaTransferenciaComponent {

    @Output() aoTransferir = new EventEmitter<any>();

     public valor: number;
     public destino: number;

    transferir() {
      console.log('Solicitada nova transferência');

      const valorEmitir = {valor: this.valor, destino: this.destino};
      this.aoTransferir.emit(valorEmitir);

      this.limparCampos();
  }
  limparCampos() {
    this.valor = 0;
    this.destino = 0;
    }
  }

Dúvida que notei desde começo do curso que vc não usa ao declarar as variaveis "public/protected/private". Isso não impacta no código mas seria interessante vc explica um pouco sobre isso. Outra coisa que não entendi sobre os metodos que é a mesma coisa de função ?

1 resposta

O EventEmitter tem de ser importado do @angular/core, junto com Component e Output, não de stream.

E método é apenas uma propriedade de um objeto que contém uma função. Inclusive pode ter o valor alterado dinamicamente - que é uma maneira de programar funcionalmente no Javascript.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software