Solucionado (ver solução)
Solucionado
(ver solução)
8
respostas

Uncaught ReferenceError: ListaNegociacoes is not defined

boa tarde a minha caixa de texto vazia não aparece, tentei copiar o código da aula mas ai fica aparecendo esse erro

class NegociacaoController {

  constructor() {

      let $ = document.querySelector.bind(document);
      this._inputData = $('#data');
      this._inputQuantidade = $('#quantidade');
      this._inputValor = $('#valor');
      this._listaNegociacoes = new ListaNegociacoes();

      this._negociacoesView = new NegociacoesView($('#negociacoesView'));
      this._negociacoesView.update(this._listaNegociacoes);

      this._mensagem = new Mensagem();
      this._mensagemView = new MensagemView($('#mensagemView'));
      this._mensagemView.update(this._mensagem);

  }



  adiciona(event) {

    event.preventDefault();
    this._listaNegociacoes.adiciona(this._criaNegociacao());
    this._negociacoesView.update(this._listaNegociacoes);

    this._mensagem.texto = 'Negociacao adicionada com sucesso';
    this._mensagemView.update(this._mensagem);  

    this._limpaFormulario();
}
    _criaNegociacao(){
       return new Negociacao(
       DateHelper.textoParaData(this._inputData.value),
       this._inputQuantidade.value,
       this._inputValor.value);
    }
    _limpaFormulario(){
      this._inputData.value = '';
      this._inputQuantidade.value = 1;
      this._inputValor.value = 0.0;

      this._inputData.focus();
    }
}
8 respostas

o código da view

class Mensagem {

    constructor(texto='' ){
        this._texto;
    }

    get texto(){
        return this._texto;
    }
    set texto(texto){
        this._texto = texto;
    }
}

o código do HTML

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Negociações</title>
    <link rel="stylesheet" href="css/bootstrap.css">
    <link rel="stylesheet" href="css/bootstrap-theme.css">

</head>
<body class="container">

    <h1 class="text-center">Negociações</h1>
    <div id="mensagemView"></div>
    <form class="form" onsubmit="negociacaoController.adiciona(event)">

        <div class="form-group">
            <label for="data">Data</label>
            <input type="date" id="data" class="form-control" required autofocus/>
        </div>

        <div class="form-group">
            <label for="quantidade">Quantidade</label>
            <input type="number" min="1" step="1" id="quantidade" class="form-control" value="1" required/>
        </div>

        <div class="form-group">
            <label for="valor">Valor</label>
            <input id="valor" type="number" class="form-control"  min="0.01" step="0.01" value="0.0" required />
        </div>

        <button class="btn btn-primary" type="submit">Incluir</button>
    </form>

    <div class="text-center">
        <button class="btn btn-primary text-center" type="button">
            Importar Negociações
        </button>
        <button class="btn btn-primary text-center" type="button">
            Apagar
        </button>
    </div>
    <br>
    <br>

    <div id="negociacoesView"></div>
    <script src="js/Negociacao.js"></script>
    <script src="js/NegociacaoController.js"></script>
    <script src="js/DateHelper.js"></script>
    <script src="js/listaNegociacoes.js"></script>
    <script src="js/NegociacoesView.js"></script>
    <script src="js/Mensagem.js"></script>
    <script src="js/MensagemView.js"></script>
    <script>
    let negociacaoController = new NegociacaoController();
    </script>

</body>
</html>

Boa tarde, Henrique! Como vai?

O correto seria fazer <script src="js/ListaNegociacoes.js"></script> de acordo com o que foi visto durante o curso. Veja se com essa correção as coisas funcionam da forma como vc desejava.

Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!

ainda não consegui ele relaciona o erro ao this._listaNegociacoes = new ListaNegociacoes(); não consegui identificar o erro de jeito nenhum

Vc poderia compartilhar o seu projeto no github e mandar o link aqui? Assim eu poderei dar uma olhada no que está acontecendo pra tentar te ajudar.

postei o código lá no github pra você dar uma olhada e ver se acha o problema obrigado https://github.com/Kadugrizzo/Javascriptadv

Boa tarde já postei tem um certo tempo mas ninguém aparece para poder solucionar, estou com os estudos parados por causa do erro se alguém puder me ajudar

solução!

Opa, Henrique! Como vai?

Como vc abriu outro tópico sobre o mesmo assunto e eu resolvi a questão por lá, irei fechar esse aqui para organizar melhor o fórum.

Link do tópico com a resposta: https://cursos.alura.com.br/forum/topico-caixa-de-texto-nao-aparece-e-apresenta-um-erro-100479

Grande abraço e bons estudos, meu aluno!