nuxtjs锁函数封装

点击查看代码
export function useLockFn(fn: (...args: any[]) => Promise<any>) {
    const isLock = ref(false)
    const lockFn = async (...args: any[]) => {
        if (isLock.value) return
        isLock.value = true
        try {
            const res = await fn(...args)
            isLock.value = false
            return res
        } catch (e) {
            isLock.value = false
            throw e
        }
    }
    return {
        isLock,
        lockFn
    }
}

posted @ 2024-05-21 17:16  jialiangzai  阅读(22)  评论(0)    收藏  举报