Pre Merge pull request !148 from wslyx/master

pull/148/MERGE
wslyx 2025-05-11 04:39:27 +00:00 committed by Gitee
commit 86d67c21b4
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
1 changed files with 22 additions and 6 deletions

View File

@ -1,7 +1,7 @@
import $store from '@/sheep/store';
import { showAuthModal, showShareModal } from '@/sheep/hooks/useModal';
import { isNumber, isString, isEmpty, startsWith, isObject, isNil, clone } from 'lodash-es';
import throttle from '@/sheep/helper/throttle';
import { debounce } from 'lodash';
const _go = (
path,
@ -68,7 +68,7 @@ const _go = (
url += `?${query}`;
}
// 跳转底部导航
// 跳转底部导航,TABBAR由Vite配置插件注入的,在uniReadPagesV3Plugin中
if (TABBAR.includes(page)) {
uni.switchTab({
url,
@ -89,11 +89,27 @@ const _go = (
});
};
// 限流 防止重复点击跳转
// 防抖 防止重复点击跳转
let go_args;
const debouncedGoFunc = debounce(
() => {
_go(...go_args);
},
500,
{
//在延迟开始前立即调用事件
leading: true,
//在延时结束后不调用,保证事件只被触发一次
trailing: false,
}
);
function go(...args) {
throttle(() => {
_go(...args);
});
// 向新的路径跳转时清除遗留debounce的状态
if (args !== go_args) {
debouncedGoFunc.cancel();
}
go_args = args;
debouncedGoFunc();
}
function paramsToQuery(params) {