fix: 快速按下删除会话导致的问题 #917

This commit is contained in:
ChenZhaoYu
2023-03-28 13:48:49 +08:00
parent 07123b70ad
commit c0a9fd5208
2 changed files with 23 additions and 3 deletions

View File

@@ -0,0 +1,18 @@
type CallbackFunc<T extends unknown[]> = (...args: T) => void
export function debounce<T extends unknown[]>(
func: CallbackFunc<T>,
wait: number,
): (...args: T) => void {
let timeoutId: ReturnType<typeof setTimeout> | undefined
return (...args: T) => {
const later = () => {
clearTimeout(timeoutId)
func(...args)
}
clearTimeout(timeoutId)
timeoutId = setTimeout(later, wait)
}
}