Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Diferença do exercício para o aplicado na aula

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?

2 respostas
solução!

Podem fechar o tópico. Foi abordado o tema nos exercícios da próxima aula. O reflect realmente deveria ter um return para poder tratar todo tipo de método, mas dá certo por que nosso método não retorna nada.

Eric, marca a sua resposta como resolvida, ai vai fechar o tópico :D