소스 검색

AI: 修复更新会友后列表不刷新的问题

D8D AI 1 년 전
부모
커밋
1a7360c03d
1개의 변경된 파일8개의 추가작업 그리고 8개의 파일을 삭제
  1. 8 8
      src/components/MemberList.jsx

+ 8 - 8
src/components/MemberList.jsx

@@ -1,4 +1,4 @@
-import React, { useState, useEffect } from 'react';
+import React, { useState, useEffect, useCallback } from 'react';
 import { Table, Button, message, Modal, Space } from 'antd';
 import { deviceApi } from '../api/deviceApi';
 import ExcelImportExport from './ExcelImportExport';
@@ -10,11 +10,7 @@ const MemberList = () => {
   const [isModalVisible, setIsModalVisible] = useState(false);
   const [editingMember, setEditingMember] = useState(null);
 
-  useEffect(() => {
-    fetchMembers();
-  }, []);
-
-  const fetchMembers = async () => {
+  const fetchMembers = useCallback(async () => {
     setLoading(true);
     try {
       const data = await deviceApi.getAllPersons();
@@ -27,7 +23,11 @@ const MemberList = () => {
     } finally {
       setLoading(false);
     }
-  };
+  }, []);
+
+  useEffect(() => {
+    fetchMembers();
+  }, [fetchMembers]);
 
   const handleAdd = () => {
     setEditingMember(null);
@@ -68,7 +68,7 @@ const MemberList = () => {
         message.success('会友添加成功');
       }
       setIsModalVisible(false);
-      fetchMembers();
+      fetchMembers(); // 重新获取会友列表
     } catch (error) {
       console.error('操作失败', error);
       message.error(`操作失败: ${error.message}`);