Fui seguindo o curso e me aparece esse erro seguue o código do controller
class NegociacaoController{
constructor(){
let $= document.querySelector.bind(document);
this._inputData = $("#data");
this._inputQuatidade = $("#quantidade");
this._inputValor= $("#valor");
self= this;
this._listaNegociacoes = new Proxy(new ListaNegociacoes(),{
get(target, prop, receiver){
if(['adiciona', 'esvazia'].includes(prop) && typeof(target[prop]) == typeof(Function)){
console.log(`a propriedade "${prop}" foi interceptada`);
Reflect.apply(target[prop],target ,arguments);
self._negociacoesView.update(target);
}
return Reflect.get(target,prop ,receiver);
}
});
/*
this._listaNegociacoes = new ListaNegociacoes(model =>
this._negociacoesView.update(model)
);
*/
this._negociacoesView = new NegociacoesView($("#negocicoesView"));
this._negociacoesView.update(this._listaNegociacoes);
this._listaNegociacoes.adiciona(new Negociacao(new Date(),1,100));
this._mensagem = new Mensagem();
this._mensagemView = new MensagemView($("#mensagemView"));
this._mensagemView.update(this._mensagem);
}
apaga(){
this._listaNegociacoes.esvazia();
this._negociacoesView.update(target);
this._mensagem.texto = "Negocição apagada com sucesso!";
this._mensagemView.update(this._mensagem);
}
_criaNegociacao(){
return new Negociacao(
DataHelper.textoParaData(this._inputData.value),
this._inputQuatidade.value,
this._inputValor.value);
}
_limpaFormulario(){
this._inputData.value = "";
this._inputQuatidade.value = 1;
this._inputValor.value= 0,0;
this._inputData.focus();
}
adicionar(event){
event.preventDefault();
this._listaNegociacoes.adiciona(this._criaNegociacao());
this._negociacoesView.update(this._listaNegociacoes);
console.log(this._criaNegociacao());
this._listaNegociacoes.negociacoes.push(this._criaNegociacao());
console.log(this._listaNegociacoes);
this._mensagem.texto = "Negociacao adicionada com sucesso";
this._mensagemView.update(this._mensagem);
this._limpaFormulario();
console.log(this._listaNegociacoes.negociacoes);
console.log(DataHelper.dataParaTexto(negociacao.data));
}
}
código do class listanegociacoes !
class ListaNegociacoes{
constructor(){
this._negociacoes = [];
// this._armadilha = armadilha;
}
adiciona(negociacao) {
this._negociacoes.push(negociacao);
//this._armadilha(this);
//Reflect.apply(this._armadilha,this._contexto,[this]);
}
get negociacoes() {
return [].concat(this._negociacoes);
}
esvazia() {
this._negociacoes = [];
//this._armadilha(this);
//Reflect.apply(this._armadilha,this._contexto,[this]);
}
}