1
resposta

"'event' is deprecated", ainda persiste a situação e a dúvida. Como resolver isso?

Quando se passa o mouse sobre a palavra 'event', no código abaixo, aparece a seguinte mensagem: "var event: Event | undefined @deprecated

'event' is deprecatedts(6385) No quick fixes available"

Como resolver isso?

export function throttle(milissegundos: number = 500) {
    return function(target: any, propertyKey: string, descriptor: PropertyDescriptor) {
        const metodoOriginal = descriptor.value;
        let timer =  0; 
        descriptor.value  = function(...args:any[]){
            if(event) event.preventDefault();
            clearInterval(timer)
            timer = setTimeout( () => metodoOriginal.apply(this,args), milissegundos);

        }
        return descriptor; 
    }

}
1 resposta

Fala ai Luiz, tudo bem? O problema é que o event global não é muito recomendável, isso porque alguns navegadores não possuem o mesmo global o que pode acarretar em problemas.

O ideai seria você receber o event como parâmetro da função que está de fato sendo vinculada à um evento HTML, exemplo:

window.addEventListener('click', event => {
    // ...
})

Nesse caso, a função de callback passada para os listener recebe o event.

Espero ter ajudado.