Olá, espero que você esteja bem,
Estou com o erro abaixo ao tentar rodar o arquivo index,js
o Node retorna o seguinte erro:
"Must call super constructor in derived class before accessing 'this' or returning from derived constructor"
Abaixo minhas Classes criadas:
Classe ContaSalario
import {Conta } from "./Conta.js";
export class ContaSalario extends Conta{
constructor(cliente){
super(0,this.cliente, 100)
}
Classe Conta
export class Conta {
//Classe abstrata
constructor ( saldoInicial, cliente, agencia){
if (this.constructor == Conta){
throw new Error("Você não deveria instanciar um objeto do tipo Conta, pois ela é uma classe abstrata.");
}
this._saldo = saldoInicial;
this._cliente = cliente;
this._agencia = agencia;
}
set cliente(novoValor){
if(novoValor instanceof Cliente){
this._cliente = novoValor;
}
}
get cliente(){
return this._cliente;
}
get saldo(){
return this._saldo;
}
get agencia(){
return this._agencia;
}
sacar(valor){
throw new Error("O metodo sacar é abstrato")
}
_sacar(valor,taxa){
const valorSacado = taxa * valor;
if(this._saldo >= valorSacado){
this._saldo -= valorSacado;
return valorSacado;
}
return 0;
}
depositar(valor){
if(valor <= 0)
{
return;
}
this._saldo += valor;
}
transferir(valor, conta){
const valorSacado = this.sacar(valor);
conta.depositar(valorSacado);
}
teste(){
console.log("Metodo Teste da Classe Conta.")
}
}
Quando não referencio o this.cliente no super o codigo roda.