Olá amigos,
quando eu retiro o _ da propriedade email, deixando ela pública e também quando mantenho o receiver como parâmetro para a função Reflect.set a aplicação lança esse erro (mencionado no título da pergunta), como se ele entrasse num loop de set. O que isso quer dizer?
PS. Retirei o receiver e funcionou sem erro, assim:
class Funcionario {
constructor(email) {
this._email = email;
}
get email() {
return this._email;
}
set email(novoEmail) {
this._email = novoEmail;
}
}
let funcionarioProxy = new Proxy(new Funcionario('shopper.tiago@gmail.com'), {
set(target, prop, value, receiver) {
console.log(`O valor da propriedade ${prop} atualmente é ${target[prop]}`);
console.log(`O novo valor atribuído é ${value}`);
Reflect.set(target, prop, value);
}
});
Assim também roda sem problemas:
target[pro] = value
Qual a razão disto?