2
respostas

O que significa a expressão: SyntaxError: Private field '#cpf' must be declared in an enclosing class

Eu tenho esse erro no compilador do node:

SyntaxError: Private field '#cpf' must be declared in an enclosing class

O minha classe cliente está da forma a seguir:

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

  constructor(nome, cpf) {
    this.nome = nome;
    this.#cpf = cpf;
  }
}

Como eu poderia resolver?

2 respostas

Estou usando a versão v15.8.0 do Node.js

Fala ai Thais, tudo bem? Você precisa definir a propriedade cpf como atributo da classe Cliente, algo assim:

export class Cliente {
    #cpf;

  get cpf() {
    return this.#cpf;
  }

  constructor(nome, cpf) {
    this.nome = nome;
    this.#cpf = cpf;
  }
}

Espero ter ajudado.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software