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

Criação de construtor de uma subclasse.

Na classe View.js, em seu construtor ele recebe um parâmetro e atribui o mesmo a um atributo(propriedade). Na classe MenssagemView.js , subclasse(classe filha) de View.js, é necessário criar o construtor somente para chamar o super(parâmetro) assim como o instrutor faz na videoaula, ou posso omitir o mesmo? Quais possíveis problemas eu teria ao omití-lo?

constructor(elemento){
    super(elemento);
}

Fiz o teste omitindo o construtor, e funcionou normalmente, como se ele usasse o construto da classe mãe por debaixo dos panos, mesmo sem que o chame em seu construtor.

Segue abaixo as classes citadas:

class MenssagemView extends View {
    _template(model) {
        return model.texto
            ? `<p class="alert alert-info">${model.texto}</p>`
            : "<p></p>";
    }
}
class View {
    constructor(elemento) {
        this._elemento = elemento;
    }

    _template(model) {}

    update(model) {
        this._elemento.innerHTML = this._template(model);
    }
}
1 resposta
solução!

Boa tarde!

Separando em dois pontos:

01 - Omitindo o constructor da subclasse:

Vai funcionar, exatamente como você falou : "Fiz o teste omitindo o construtor, e funcionou normalmente, como se ele usasse o construto da classe mãe por debaixo dos panos,". E não é por debaixo dos panos não. É assim mesmo - a chamada será a da superclasse, já que a classe filha não contém tal implementação.

02 - É necessário criar o construtor somente para chamar o super(parâmetro) assim como o instrutor faz na videoaula, ou posso omitir o mesmo?

Necessário /obrigatório, não é, tanto que você mesmo fez o teste e funcionou perfeitamente.

Mas é uma boa prática, para que não seja chamada diretamente a superclasse. O normal é cada um ter seu próprio construtor e fazer a passagem para a superclasse.