浏览代码

feat(process):导航栏增加待办流程角标

HMY 10 月之前
父节点
当前提交
4572d4ddbd
共有 1 个文件被更改,包括 15 次插入12 次删除
  1. 15 12
      pages/message/index.vue

+ 15 - 12
pages/message/index.vue

@@ -269,24 +269,27 @@ function showTabBarBadge() {
 			$modal.showToast('待办流程数获取失败')
 			return
 		} else {
-			unProcessNum.value = parseInt(res.returnParams.total, 10);
+			unProcessNum.value = parseInt(res.returnParams?.total || 0, 10);
 		}
 		getUnReadMessageNum(userStore.user.useId).then(res => {
-			unReadMsgNum.value = parseInt(res.returnParams, 10);
+			unReadMsgNum.value = parseInt(res.returnParams ?? 0, 10);
 			unReadNum.value = unReadMsgNum.value + unProcessNum.value;
-			if (unReadNum.value == 0) {
-				uni.removeTabBarBadge({
-					index: 0
-				})
-			} else {
-				uni.setTabBarBadge({
-					index: 0,
-					text: unReadNum.value > 99 ? '99+' : String(unReadNum.value)
-				})
-			}
+			setThisTabBarBadge(0,unReadNum.value)
+			setThisTabBarBadge(1,unProcessNum.value)
 		})
 	})
 }
+// 提取通用 badge 设置逻辑
+function setThisTabBarBadge(index, count) {
+	if (count <= 0) {
+		uni.removeTabBarBadge({ index });
+	} else {
+		uni.setTabBarBadge({
+			index,
+			text: count > 99 ? "99+" : String(count)
+		});
+	}
+}
 // 设置所有消息已读
 function setAllMsgRead() {
 	$modal.confirm('是否全部已读').then(res => {