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

Erro classe ja declarada

PS C:\Users\lenovo\Desktop\obj-js> node index.js (node:1604) Warning: To load an ES module, set "type": "module" in or use the .mjs extension. (Use node --trace-warnings ... to show where the warning was cre PS C:\Users\lenovo\Desktop\obj-js> npm init This utility will walk you through creating a package.json file. It only covers the most common items, and tries to guess sensible

See npm help init for definitive documentation on these fields and exactly what they do.

Use npm install <pkg> afterwards to install a package and save it as a dependency in the package.json file.

Press ^C at any time to quit. package name: (obj) goldbyte version: (1.0.0) description: Projeto goldbyte soluções inteligentes entry point: (index.js) test command: git repository: keywords: author: L-Farias license: (ISC) About to write to C:\Users\lenovo\Desktop\obj-js\package.json:

{ "name": "goldbyte", PS C:\Users\lenovo\Desktop\obj-js> node index.js file:///C:/Users/lenovo/Desktop/obj-js/index.js:35 import { ContaCorrente } from "./ContaCorrente"; PS C:\Users\lenovo\Desktop\obj-js> node index.js internal/process/esm_loader.js:74 internalBinding('errors').triggerUncaughtException( ^ PS C:\Users\lenovo\Desktop\obj-js> node index.js file:///C:/Users/lenovo/Desktop/obj-js/index.js:34 import { Cliente } from "../Cliente"; PS C:\Users\lenovo\Desktop\obj-js> node index.js file:///C:/Users/lenovo/Desktop/obj-js/index.js:34 import { Cliente } from "./Cliente.js"; ^^^^^^^

SyntaxError: Identifier 'Cliente' has already been declared at Loader.moduleStrategy (internal/modules/esm/translators.js:145:18) at async link (internal/modules/esm/module_job.js:64:21) PS C:\Users\lenovo\Desktop\obj-js>

7 respostas

index.js

class Cliente { nome; cpf; idade; }

class ContaCorrente { ag; conta; saldo;

sacar(valor){

    if (this.saldo >= valor) {
        this.saldo -= valor;
        return valor;
    }
}


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

}

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

const cliente1 = new Cliente(); cliente1.nome = "Bob Marley"; cliente1.cpf = 987456321 - 09; cliente1.idade = "28/09/2000";

const cliente2 = new Cliente(); cliente2.nome = "Julia Roberts"; cliente2.cpf = 768543890 - 32; cliente2.idade = "06/04/2000";

const contaCorrenteBob = new ContaCorrente; contaCorrenteBob.ag = "0001"; contaCorrenteBob.conta = "0001-1"; contaCorrenteBob.saldo = 250;

const contaCorrenteJulia = new ContaCorrente; contaCorrenteJulia.ag = "0001"; contaCorrenteJulia.conta = "0002-1"; contaCorrenteJulia.saldo = 500;

const valorSacado = contaCorrenteBob.sacar(90);

console.log(valorSacado);

console.log(contaCorrenteBob);

{ "name": "goldbyte", "version": "1.0.0", "description": "Projeto goldbyte soluções inteligentes", "main": "index.js", "scripts": { "test": "echo "Error: no test specified" && exit 1" }, "author": "L-Farias", "license": "ISC", "type": "module" }

export class Cliente { nome; cpf; idade; }

export class ContaCorrente { ag; conta; saldo;

sacar(valor){

    if (this.saldo >= valor) {
        this.saldo -= valor;
        return valor;
    }
}


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

}

solução!

Oi Leonardo, tudo bem?

Pelo que eu pude ver no seu código, dentro do index.js você está declarando as classes Cliente e ContaCorrente com seus respectivos atributos e mesmo assim você está importando essas duas classes no mesmo arquivo, e isso causa um erro de duplicação!

O correto seria você remover essas duas declarações das classes Cliente e ContaCorrente, deixando apenas o seu import:

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

const cliente1 = new Cliente(); 
cliente1.nome = "Bob Marley"; 
cliente1.cpf = 987456321 - 09; 
cliente1.idade = "28/09/2000";

const cliente2 = new Cliente(); 
cliente2.nome = "Julia Roberts"; 
cliente2.cpf = 768543890 - 32; 
cliente2.idade = "06/04/2000";

const contaCorrenteBob = new ContaCorrente(); 
contaCorrenteBob.ag = "0001"; 
contaCorrenteBob.conta = "0001-1"; 
contaCorrenteBob.saldo = 250;

const contaCorrenteJulia = new ContaCorrente(); 
contaCorrenteJulia.ag = "0001"; 
contaCorrenteJulia.conta = "0002-1"; 
contaCorrenteJulia.saldo = 500;

const valorSacado = contaCorrenteBob.sacar(90);

console.log(valorSacado);

console.log(contaCorrenteBob);

Espero ter ajudado, bons estudos =)

Bom dia Girl Coding, tudo otimo e com você?

Te sigo no youtube :)

Muito obrigado, consegui resolver o erro o/

Hahahah fico muito feliz que me segue por lá, e feliz também que consegui te ajudar a resolver o erro.

Precisando de qualquer coisa é só postar aqui que estaremos à disposição, abraços =)