1
resposta

'number' only refers to a type, but is being used as a value here.

<section class="container">

    <form class="form" (ngSubmit)="transferir()">
        <h1 class="title">Nova Transferência</h1>

        <div class="form-field">
            <label class="form-field__label" for="valor">Valor</label>
            <input class="form-field__input" id="valor" type="text" [(ngmodel)]="value">
        </div>

        <div class="form-field">
            <label class="form-field__label" for="valor">Destino</label>
            <input class="form-field__input" id="valor" type="text" [(ngmodel)]="destiny">
        </div>

        <div class="btn">
            <button class="button">Transferir</button>
        </div>

    </form>

</section>

Arquivo TS

import { Component, OnInit } from '@angular/core';

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

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

  constructor() {
    value: number;
    destiny: number;
  }

  ngOnInit(): void {
  }

}
1 resposta

Olá, Raquel! Tudo bem?

A sintaxe váriavel: tipo é apenas permitida em alguns trechos do código, onde pode haver declaração de variáveis sem o uso de const e let.

No caso, você está passando as variáveis dentro do constructor, e ele não está entendendo corretamente o que você quer, achando que é uma atribuição, ao invés de definição de tipo.

Faça isso acima do constructor:

export class NovaTransferenciaComponent implements OnInit {

  // agora a declaração das variáveis fica aqui
  value: number;
  destiny: number;

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

  constructor() {

  }

  ngOnInit(): void {
  }

}

Espero ter ajudado!