2
respostas

'ERR_MODULE_NOT_FOUND'

O meu terminal está apresentando esse erro:

Error [ERR_MODULE_NOT_FOUND]: Cannot find module 'C:\Users\Rafaela e Victor\Documents\PROJETO ALURA\JavaScript Interfaces e Herança em Orientação 
a Objetos\js-heranca-polimorfismo-projetoinicial\Conta' imported from C:\Users\Rafaela e Victor\Documents\PROJETO ALURA\JavaScript Interfaces e Herança em Orientação a Objetos\js-heranca-polimorfismo-projetoinicial\contaPoupanca.js
Did you mean to import ../Conta.js?
    at new NodeError (node:internal/errors:371:5)
    at finalizeResolution (node:internal/modules/esm/resolve:416:11)
    at moduleResolve (node:internal/modules/esm/resolve:932:10)
    at defaultResolve (node:internal/modules/esm/resolve:1044:11)
    at ESMLoader.resolve (node:internal/modules/esm/loader:422:30)
    at ESMLoader.getModuleJob (node:internal/modules/esm/loader:222:40)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:76:40)
    at link (node:internal/modules/esm/module_job:75:36) {
  code: 'ERR_MODULE_NOT_FOUND'
}

Segue os Códigos logo abaixo:

import {Cliente} from "./Cliente.js";
import {ContaCorrente} from "./ContaCorrente.js";
import { ContaPoupanca } from "./contaPoupanca.js";
import {Conta} from "./Conta.js";

const cliente1 = new Cliente("Ricardo", 11122233309);

const contaCorrenteRicardo = new ContaCorrente(cliente1, 1001);
contaCorrenteRicardo.depositar(500);
contaCorrenteRicardo.sacar(100);

const contaPoupanca = new ContaPoupanca(50,cliente1,1001);

console.log(contaCorrenteRicardo);
console.log(ContaPoupanca);
export class Conta {
    constructor(saldoInicial,cliente,agencia){
        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;
    }

    sacar(valor){
        taxa = 1.1*valor
        if(this._saldo >= valor){
            this._saldo -= valor;
            return valor;
        }
    }

    depositar(valor){
        if(valor <= 0)
        {
            return;
        } 
        this._saldo += valor;           
    }

    tranferir(valor, conta){

        const valorSacado = this.sacar(valor);
        conta.depositar(valorSacado);

    }
}
import { Cliente } from "./Cliente.js";

export class ContaCorrente extends Conta{
    static numeroDeContas = 0;

   // #saldo =0 https://github.com/tc39/proposal-class-fields#private-fields

    constructor(cliente, agencia){ 
        super(0,cliente, agencia);
        ContaCorrente.numeroDeContas += 1;
    }
}
import { Conta } from "./Conta";

export class ContaPoupanca extends Conta {
    constructor(tipo, saldoInicial,cliente,agencia){

    }
}
export class Cliente{
    get cpf(){
        return this._cpf;
    }

    constructor(nome, cpf){
        this.nome = nome;
        this._cpf = cpf;
    }
}
2 respostas

Oi Victor, tudo bem?

Primeiramente desculpe a demora em retornar.

Pelo que pude perceber, o erro que está aparecendo em seu terminal é referente à impossibilidade de encontrar o módulo 'Conta' em um dos arquivos do seu projeto. O erro sugere que você tente importar '../Conta.js' ao invés de 'Conta', como segue abaixo:

import {Conta} from "../Conta.js";

Isso deve resolver o problema e permitir que o seu projeto execute corretamente.

Vale ressaltar que o erro ERR_MODULE_NOT_FOUND ocorre quando o Node.js não consegue encontrar um módulo ou arquivo que foi importado em seu código. Isso pode acontecer por diversos motivos, como um erro de digitação no nome do arquivo, uma falha na instalação de um pacote ou dependência, entre outros. No seu caso, o problema parece estar relacionado a um erro de caminho do arquivo.

Além disso, é importante lembrar que, ao importar um módulo em JavaScript, o caminho para o arquivo deve ser informado corretamente. Isso inclui informar a extensão do arquivo, como no exemplo abaixo:

import {Cliente} from "./Cliente.js";

Outro ponto que vale a pena mencionar é que, ao trabalhar com herança em JavaScript, é importante que as classes estejam organizadas em arquivos separados e que as importações estejam sendo feitas de forma correta. Certifique-se de que as classes ContaCorrente e ContaPoupanca estejam sendo importadas corretamente em seus respectivos arquivos.

Espero que tenha te ajudado.

Um abraço e bons estudos.

obrigado