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

Erro na classe View.js

Estou abrindo um novo tópico pois o meu tópico anterior aberto à duas semanas não foi solucionado.

Está ocorrendo o erro Uncaught TypeError: Cannot set property 'innerHTML' of null na linha this.elemento.innerHTML = this.template(model);. Não consegui identificar o motivo.

class View {

    constructor(elemento) {
        this._elemento = elemento;
    }
    update(model) {
        this._elemento.innerHTML = this._template(model);
    }
}

github do meu projeto https://github.com/emiliovasconcelos/learning-javascript

3 respostas
solução!

Fala ai Antônio, tudo bem? O problema está no seu html.

Repare no trecho de código da sua NegociacaoController:

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

Você está criando uma nova MensagemView e como parâmetro busca um elemento com o id igual á mensagemView.

Mas, olhando no seu index.html:

<div id="MensagemView"></div>

Repare que o id está diferente do que você busca, sendo assim, o retorno será null e sua classe View irá tentar fazer null.innerHTML.

Para resolver o problema, arruma o id da sua div:

<div id="mensagemView"></div>

Foi um pequeno e simples erro de digitação, acontece (já fiz muitas vezes kkk).

Espero ter ajudado.

Matheus obrigado, eu revisei esse código várias vezes e não percebi isso

Magina, sempre que precisar não deixe de criar suas duvidas.

Abraços e bons estudos.