No exercício nós somos lembrados que as instruções Reflect sempre tem de estar atreladas a um return.
Contudo, na aula isso não procede, vide o código usado pelo instrutor:
let self = this;
this._listaNegociacoes = new Proxy(new ListaNegociacoes(), {
get(target, prop, receiver) {
if(['adiciona', 'esvazia'].includes(prop) && typeof(target[prop]) == typeof(Function)) {
return function() {
console.log(`interceptando ${prop}`);
Reflect.apply(target[prop], target, arguments);
self._negociacoesView.update(target);
}
}
return Reflect.get(target, prop, receiver);
}
});
Percebam que dentro do return function o Reflect.apply está sem return.
Está errado? Se sim, por que funciona?