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

update Undefined

Olá, acabei de assistir a 3 aula do curso mas não consigo concertar o erro

Ao criar a parte do Bind dá um erro que diz que : "Bind.js:11 Uncaught TypeError: Cannot read property 'update' of undefined(…)"

o cod está assim

class NegociacaoController {

    constructor() {

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

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

        this._listaNegociacoes = new Bind(
            new ListaNegociacoes(),
            this._negociacoesView,
            ['adiciona', 'esvazia'])

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

        this._mensagem = new Bind(
            new Mensagem(),
            this.mensagemView,
            ['texto']);
    }

    adiciona(event) {

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

        this._mensagem.texto = 'Negociação adicionada com sucesso';
        this._mensagemView.update(this._mensagem);

        this._limpaFormulario();   
    }

    apaga(){

        this._listaNegociacoes.esvazia();
        this._mensagem.texto = "Apagado com sucesso";
        this._mensagemView.update(this._mensagem);
    }

    _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();   
    }

}

e o Bind está Assim :

class Bind{

    constructor(model, view, props){

        let proxy = ProxyFactory.create(model,props, (model) => 
            view.update(model) );

        view.update(model);

        return proxy;
    }

}
1 resposta
solução!

Já Achei o erro