types: 'this' issue in debounce function
This commit is contained in:
@@ -1,11 +1,10 @@
|
|||||||
export function debounce(func: Function, delay: number) {
|
export function debounce(func: Function, delay: number) {
|
||||||
let timer: number
|
let timer: number
|
||||||
return function (...args: any) {
|
return function (this: any, ...args: any[]) {
|
||||||
if (timer) {
|
if (timer) {
|
||||||
window.clearTimeout(timer)
|
window.clearTimeout(timer)
|
||||||
}
|
}
|
||||||
timer = window.setTimeout(() => {
|
timer = window.setTimeout(() => {
|
||||||
// @ts-ignore
|
|
||||||
func.apply(this, args)
|
func.apply(this, args)
|
||||||
}, delay)
|
}, delay)
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-2
@@ -1,11 +1,10 @@
|
|||||||
export function debounce(func: Function, delay: number) {
|
export function debounce(func: Function, delay: number) {
|
||||||
let timer: number
|
let timer: number
|
||||||
return function (...args: any) {
|
return function (this: any, ...args: any[]) {
|
||||||
if (timer) {
|
if (timer) {
|
||||||
window.clearTimeout(timer)
|
window.clearTimeout(timer)
|
||||||
}
|
}
|
||||||
timer = window.setTimeout(() => {
|
timer = window.setTimeout(() => {
|
||||||
// @ts-ignore
|
|
||||||
func.apply(this, args)
|
func.apply(this, args)
|
||||||
}, delay)
|
}, delay)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user