123456789101112131415161718192021 |
- /**
- * 防抖
- * @param wait 等待时间 单位秒
- */
- export default function Debounce(wait: number) {
- return function (target: any, keyname: string, descriptor: PropertyDescriptor) {
- const method: Function = descriptor.value;
- let timer: number = null;
- descriptor.value = function (...args: any[]) {
- if (timer) {
- clearInterval(timer);
- timer = null;
- }
- timer = setTimeout(() => {
- clearInterval(timer);
- timer = null;
- method.apply(this, args);
- }, wait * 1000);
- };
- };
- }
|