74 lines
2.0 KiB
Plaintext
74 lines
2.0 KiB
Plaintext
import * as xStorex from "./config/xConfig.uts"
|
|
import * as uToll from "./core/util/xCoreUtil.uts"
|
|
import * as xColor from "./core/util/xCoreColorUtil.uts"
|
|
import * as xComponentsStore from "./core/util/config.uts"
|
|
|
|
import { xTween } from "./core/util/xTween.uts"
|
|
import { xDate, createDate } from "./core/util/xDate.uts"
|
|
import { xRequest } from "./core/util/xRequest.uts"
|
|
import { xRequestCall } from "./core/util/config.uts"
|
|
import { xAnimate } from "./core/util/xAnimate.uts"
|
|
import { xUploadMedia } from "./core/util/xUploadFileMedia.uts"
|
|
import xui from "./config/xui.uts"
|
|
export {
|
|
xRequest,
|
|
xRequestCall,
|
|
xDate,
|
|
createDate,
|
|
xColor,
|
|
xAnimate,
|
|
xUploadMedia,
|
|
xTween,
|
|
xui
|
|
|
|
}
|
|
export class xStore {
|
|
public static xConfig = xStorex.xConfig;
|
|
public static setConfig = xStorex.setConfig;
|
|
public static getDarkModel = xStorex.getDarkModel
|
|
public static setDarkModel = xStorex.setDarkModel
|
|
public static getThemePrimary = xStorex.getThemePrimary
|
|
public static setThemePrimary = xStorex.setThemePrimary
|
|
public static xProvitae = xStorex.xProvitae
|
|
public static xTabbarConfig = xStorex.xTabbarConfig
|
|
}
|
|
export class tool {
|
|
/**
|
|
* 防抖
|
|
* @description 使用方法
|
|
* let debounce = tool.debounce((args:any)=>{
|
|
console.log(args,'---')
|
|
},0,true)
|
|
debounce(88)
|
|
*/
|
|
public static debounce(func : (args : any) => void, wait : number, immediate ?: boolean) : (args : any) => number | null {
|
|
let timeout : number | null = null;
|
|
let callNow = immediate == null ? true : (immediate! as boolean);
|
|
// 返回的函数是实际被调用的防抖函数
|
|
return (args : any) : number | null => {
|
|
if (timeout != null && callNow == true) {
|
|
return timeout;
|
|
}
|
|
if (timeout != null) {
|
|
clearTimeout(timeout! as number);
|
|
timeout = null;
|
|
}
|
|
|
|
// 决定是否立即执行函数
|
|
if (callNow == true) {
|
|
|
|
func(args)
|
|
timeout = setTimeout(() => {
|
|
timeout = null;
|
|
}, wait);
|
|
return timeout;
|
|
}
|
|
// 否则,设置定时器以稍后执行函数
|
|
timeout = setTimeout(() => {
|
|
func(args)
|
|
|
|
}, wait);
|
|
return timeout
|
|
}
|
|
}
|
|
} |