Não consigo achar o erro abaixo do console...
Uncaught TypeError: Cannot set property 'innerHTML' of undefined at NegociacoesView.update (View.js:10) at new NegociacaoControler (NegociacaoControler.js:13) at index.html:59
class NegociacoesView extends View {
    _template(model) {
        return `
        <table class="table table-hover table-bordered">
            <thead>
                <tr>
                <th>DATA</th>
                <th>QUANTIDADE</th>
                <th>VALOR</th>
                <th>VOLUME</th>
                </tr>
            </thead>
            <tbody>        
               ${model.negociacoes.map(n => `
                   <tr>
                       <td>${DateHelper.dataParaTexto(n.data)}</td>
                       <td>${n.quantidade}</td>
                       <td>${n.valor}</td>
                       <td>${n.volume}</td>
                   </tr>
                `).join('')}
            </tbody>
            <tfoot>
                <td colspan="3"></td>
                <td>
                    ${model.negociacoes.reduce((total, n) => total + n.volume, 0.0)}
                </td>
            </tfoot>
        </table>
        `;
    }
}class MensagemView extends View {
_template(model) {
    return model.texto ? `<p class="alert alert-info">${model.texto}</p>` : '<p></p>';
}}
class View {
    constructor(elemento) {
        this.elemento = elemento;
    }
    update(model) {
        this._elemento.innerHTML = this._template(model);
    }
}class NegociacaoControler {
constructor() {
    /* as tre linhas abaixo capturam o valor do input no HTML */
    let $ = document.querySelector.bind(document); /* bind mantem a associacao queryselector com o 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 = 'Negociação 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();
}}