export function _debounce(fn, delay) {
var delay = delay || 200;
var timer;
return function () {
var th = this;
var args = arguments;
if (timer) {
clearTimeout(timer);
}
timer = setTimeout(function () {
timer = null;
fn.apply(th, args);
}, delay);
};
}
export function _debounceNow(fn, delay) {
var delay = delay || 200;
var timer;
return function () {
var th = this;
var args = arguments;
if (timer) {
clearTimeout(timer);
}
let clallNow=!timer;
if(clallNow){
fn.apply(th, args);
}
timer = setTimeout(function () {
timer = null;
}, delay);
};
}
export function _throttle(fn, interval) {
var last;
var timer;
var interval = interval || 200;
return function () {
var th = this;
var args = arguments;
var now = +new Date();
if (last && now - last < interval) {
clearTimeout(timer);
timer = setTimeout(function () {
last = now;
fn.apply(th, args);
}, interval);
} else {
last = now;
fn.apply(th, args);
}
}
}
export function _throttleTime(fn, interval) {
var timer;
var interval = interval || 200;
return function () {
var th = this;
var args = arguments;
if (!timer) {
timer=setTimeout(function(){
timer=null;
fn.apply(th,args)
},interval)
}
}
}
import { _debounce } from "@/utils/public";
methods: {
changefield: _debounce(function(data) {
this.getList()
}, 200),
getList(){
}
}