|
|
@@ -238,18 +238,31 @@ export const $formatDate = (num, fmt = "YYYY-MM-DD HH:mm", all) => {
|
|
|
return fmt;
|
|
|
};
|
|
|
|
|
|
+// 防重复导航的时间间隔(毫秒)
|
|
|
+let lastNavigateTime = 0;
|
|
|
+const NAVIGATE_THROTTLE_TIME = 600;
|
|
|
+
|
|
|
/** *
|
|
|
- * 全局公共按钮跳转
|
|
|
+ * 全局公共按钮跳转(已添加防重复点击功能)
|
|
|
* @parmas item.funtion 为可执行函数
|
|
|
* @parmas item.url 为跳转的路径
|
|
|
* @parmas item.query 为跳转携带的参数
|
|
|
* @parmas item.type 为跳转调用的函数 1为navigateTo, 2为redirectTo 关闭当前页,跳转到指定页, 3为reLaunch, 4为switchTab
|
|
|
*/
|
|
|
export const pageTo = item => {
|
|
|
+ // 防重复点击逻辑
|
|
|
+ const currentTime = Date.now();
|
|
|
+ if (currentTime - lastNavigateTime < NAVIGATE_THROTTLE_TIME) {
|
|
|
+ console.log('导航操作过于频繁,已忽略');
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ lastNavigateTime = currentTime;
|
|
|
+
|
|
|
if (isNumber(item)) {
|
|
|
uni.navigateBack({
|
|
|
delta: item
|
|
|
});
|
|
|
+ return false;
|
|
|
}
|
|
|
if (isString(item)) {
|
|
|
uni.navigateTo({
|