Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

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.