Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Erro de Data, devido a diferença minima

Na requisição do servidor, quando escrevo o código abaixo, tudo dá certo. Sem erros ai importar.

JSON.parse(request.responseText) 
 .map(objeto => new Negociacao(new Date(objeto.data), objeto.quantidade, objeto.valor)) 
 .forEach(negociacao => this._negociacoesLista.adiciona(negociacao));

Porém, se escrevo basicamente o mesmo código, mas com chaves { } nas arrow functions, conforme abaixo, recebo o erro "TypeError: Cannot read property 'data' of undefined". Porque ocorre esse erro? Pelo que entendi, as chaves podem fazem parte da arrow function.

JSON.parse(request.responseText)
 .map(objeto => {
     console.log(this);
    new Negociacao(new Date(objeto.data), objeto.quantidade, objeto.valor)
})
 .forEach(negociacao => {
    console.log(this);
    this._negociacoesLista.adiciona(negociacao)
});
1 resposta
solução!

Oi, Vinicius, tudo bem?

Quando usamos arrow functions com chaves a sintaxe da expressão diz que precisamos do return. Assim, ficaria dessa forma:

JSON.parse(request.responseText)
 .map(objeto => {
     console.log(this);
    return new Negociacao(new Date(objeto.data), objeto.quantidade, objeto.valor)
})

Sempre que modificar o seu código, dê f5 no localhost:3000 para que a atulização seja vista.

Para saber mais: https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Functions/Arrow_functions

Qualquer dúvida é só falar!