2
respostas

Continua dando erro data indefinida

Bom dia, não estou conseguindo achar onde eu errei. está dando esse erro: Negociacao.js:7 Uncaught ReferenceError: Data is not defined at new Negociacao (Negociacao.js:7) at NegociacaoController.adiciona (NegociacaoController.js:49) at HTMLFormElement.onsubmit (index.html:16)

Código na negociação controller;

insira seu código aqui

class NegociacaoController {

    constructor() {
        let $ = document.querySelector.bind(document);
        this._inputData = $("#data");
        this._inputQuantidade = $("#quantidade");
        this._inputValor = $("#valor");

    }

    adiciona(event) {
        event.preventDefault();

        let data = new Date(...
            this._inputData.value.split('-')
            .map((item, indice) => item - indice % 2));

        console.log(data);

        let negociacao = new Negociacao(
            data,
            this._inputQuantidade.value,
            this._inputValor.value
        );

        console.log(negociacao);  
    }
}

código negociação:

insira seu código aqui
class Negociacao{
    constructor(data, quantidade, valor){

        this._data = new Data(data.getTime());
        this._quantidade = quantidade;
        this._valor = valor;

        Object.freeze(this);
    }

    get volume(){
      return this.quantidade * this.valor;  
    }

    get data(){
        return  new Date(this._data.getTime());
    }

    get quantidade(){
        return this._quantidade;
    }

    get valor(){
        return this._valor;
    }
}

e no html no form:

insira seu código aqui
 <form class="form" onsubmit="negociacaoController.adiciona(event)">
2 respostas

Me parece que o erro está neste código:

class Negociacao{
    constructor(data, quantidade, valor){

        this._data = new Data(data.getTime());
        this._quantidade = quantidade;
        this._valor = valor;

        Object.freeze(this);
    }
   // Resto do código omitido...    
}

Onde está o this._data, me parece que você queria fazer isso:

 this._data = new Date(data.getTime());

Bom dia, Carolina! Como vai?

Vc poderia compartilhar seu projeto no github e mandar o link aqui? Assim eu poderei te ajudar de forma mais efetiva.

Qualquer coisa é só falar!

Grande abraço e bons estudos, minha aluna!

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