afc163 8 лет назад
Родитель
Сommit
10e8c035d1
4 измененных файлов с 20 добавлено и 22 удалено
  1. 1 1
      src/models/activities.js
  2. 1 1
      src/models/list.js
  3. 1 1
      src/models/project.js
  4. 17 19
      src/utils/request.js

+ 1 - 1
src/models/activities.js

@@ -17,7 +17,7 @@ export default {
       const response = yield call(queryActivities);
       const response = yield call(queryActivities);
       yield put({
       yield put({
         type: 'saveList',
         type: 'saveList',
-        payload: response,
+        payload: Array.isArray(response) ? response : [],
       });
       });
       yield put({
       yield put({
         type: 'changeLoading',
         type: 'changeLoading',

+ 1 - 1
src/models/list.js

@@ -17,7 +17,7 @@ export default {
       const response = yield call(queryFakeList, payload);
       const response = yield call(queryFakeList, payload);
       yield put({
       yield put({
         type: 'save',
         type: 'save',
-        payload: response,
+        payload: Array.isArray(response) ? response : [],
       });
       });
       yield put({
       yield put({
         type: 'changeLoading',
         type: 'changeLoading',

+ 1 - 1
src/models/project.js

@@ -17,7 +17,7 @@ export default {
       const response = yield call(queryProjectNotice);
       const response = yield call(queryProjectNotice);
       yield put({
       yield put({
         type: 'saveNotice',
         type: 'saveNotice',
-        payload: response,
+        payload: Array.isArray(response) ? response : [],
       });
       });
       yield put({
       yield put({
         type: 'changeLoading',
         type: 'changeLoading',

+ 17 - 19
src/utils/request.js

@@ -5,24 +5,9 @@ function checkStatus(response) {
   if (response.status >= 200 && response.status < 300) {
   if (response.status >= 200 && response.status < 300) {
     return response;
     return response;
   }
   }
-
-  return response.json().then((result) => {
-    if (result.code) {
-      notification.error({
-        message: result.name,
-        description: result.message,
-      });
-    }
-    if (result.stack) {
-      notification.error({
-        message: '请求错误',
-        description: result.message,
-      });
-    }
-    const error = new Error(result.message);
-    error.response = response;
-    throw error;
-  });
+  const error = new Error(response.statusText);
+  error.response = response;
+  throw error;
 }
 }
 
 
 /**
 /**
@@ -49,5 +34,18 @@ export default function request(url, options) {
   return fetch(url, newOptions)
   return fetch(url, newOptions)
     .then(checkStatus)
     .then(checkStatus)
     .then(response => response.json())
     .then(response => response.json())
-    .catch(err => ({ err }));
+    .catch((error) => {
+      if (error.code) {
+        notification.error({
+          message: error.name,
+          description: error.message,
+        });
+      }
+      if ('stack' in error && 'message' in error) {
+        notification.error({
+          message: `请求错误: ${url}`,
+          description: error.message,
+        });
+      }
+    });
 }
 }