Tentei fazer o proxy com apenas uma variável e o valor antigo está retornando undefined.
<script>
class Funcionario {
contructor(email) {
this._email = email;
}
get email() {
return this._email;
}
set email(email) {
this._email = email;
}
}
let funcionario = new Proxy(new Funcionario('abc@abc.com'), {
set(target, prop, value, receiver) {
console.log('"Armadilha aqui!"');
console.log(`valor antigo: ${target[prop]}, novo valor: ${value}`)
return Reflect.set(target, prop, value, receiver);
}
});
funcionario.email = 'bcd@bcd.com';
</script>