Kaynağa Gözat

fix(学员端): group/mine未入组静默处理,不再弹全局toast

liaoxg 1 hafta önce
ebeveyn
işleme
4fc2fd33a4
1 değiştirilmiş dosya ile 10 ekleme ve 6 silme
  1. 10 6
      train-frontend/utils/api.js

+ 10 - 6
train-frontend/utils/api.js

@@ -26,7 +26,7 @@ function _clearAuthAndRedirect() {
   }, 1500)
 }
 
-export const request = (url, method = 'POST', data = {}) => {
+export const request = (url, method = 'POST', data = {}, options = {}) => {
   var fullUrl = BASE_URL + url
   const token = uni.getStorageSync('token')
   // 过滤空字符串 ID 字段,防止后端 Long.valueOf("") 抛 NumberFormatException
@@ -65,10 +65,13 @@ export const request = (url, method = 'POST', data = {}) => {
         if (res.data && res.data.code === 200) {
           resolve(res.data)
         } else {
-          uni.showToast({
-            title: (res.data && res.data.message) || '请求失败',
-            icon: 'none'
-          })
+          // silent:业务型空态(如未入组/未报名)由页面自行展示,不弹全局 toast
+          if (!options.silent) {
+            uni.showToast({
+              title: (res.data && res.data.message) || '请求失败',
+              icon: 'none'
+            })
+          }
           reject(res.data)
         }
       },
@@ -129,7 +132,8 @@ export const joinGroup = (groupId) => {
   return request('/api/group/join', 'POST', { groupId })
 }
 export const getMyGroup = () => {
-  return request('/api/group/mine', 'POST')
+  // 未入组是正常空态,静默交由页面展示引导,不弹全局 toast
+  return request('/api/group/mine', 'POST', {}, { silent: true })
 }
 export const getClassGroups = () => {
   return request('/api/group/list', 'POST')