From d4f0d21608551e82c827ae0723046aeb293aa31f Mon Sep 17 00:00:00 2001 From: caishi <1149225589@qq.com> Date: Tue, 30 Nov 2021 17:55:29 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=88=90=E5=91=98-=E5=88=A0?= =?UTF-8?q?=E4=BA=86=E5=90=8E=E4=B8=8D=E8=83=BD=E9=87=8D=E5=A4=8D=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=88=90=E5=91=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/forge/Component/AddMember.jsx | 3 ++- src/forge/Settings/Collaborator.js | 5 +++-- src/forge/Settings/CollaboratorMember.jsx | 9 +++++---- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/forge/Component/AddMember.jsx b/src/forge/Component/AddMember.jsx index f927850c..f453be05 100644 --- a/src/forge/Component/AddMember.jsx +++ b/src/forge/Component/AddMember.jsx @@ -66,9 +66,10 @@ function AddMember({getID,login,showNotification}){ }; function addCollaborator(){ - if(source && source.length>0){ + if(source && source.length>0&&searchKey){ getID && getID(id); setSearchKey(undefined); + setID(undefined) }else{ showNotification("请选择存在的用户!"); } diff --git a/src/forge/Settings/Collaborator.js b/src/forge/Settings/Collaborator.js index 0a50cae1..cca2520a 100644 --- a/src/forge/Settings/Collaborator.js +++ b/src/forge/Settings/Collaborator.js @@ -8,15 +8,16 @@ import Group from './CollaboratorGroup'; function Collaborator(props){ const [ nav , setNav] = useState("1"); const [ newId , setNewId] = useState(undefined); + const [ newIdFlag , setNewIdFlag ] = useState(false); const [ addOperation , setAddOperation] = useState(true); const [ newGroupId , setNewGroupId] = useState(undefined); const {projectsId ,owner} = props.match.params; - const author = props && props.projectDetail && props.projectDetail.author; function getID(id){ setNewId(id); + setNewIdFlag(!newIdFlag); } function getGroupID(id){ setNewGroupId(id); @@ -47,7 +48,7 @@ function Collaborator(props){
{ nav === "1" ? - + : } diff --git a/src/forge/Settings/CollaboratorMember.jsx b/src/forge/Settings/CollaboratorMember.jsx index 447e3b26..0f407bf2 100644 --- a/src/forge/Settings/CollaboratorMember.jsx +++ b/src/forge/Settings/CollaboratorMember.jsx @@ -1,4 +1,4 @@ -import React, { useEffect, useState } from 'react'; +import React, { useEffect, useState , useImperativeHandle , forwardRef } from 'react'; import { Dropdown, Menu, Icon , Input , Spin , Table , Tooltip , Pagination , Popconfirm } from "antd"; import axios from 'axios'; import NoneData from "../Nodata"; @@ -12,7 +12,7 @@ const MENU_LIST = [ {id: "Developer",name: "开发者"}, {id: "Reporter",name: "报告者"} ]; -function CollaboratorMember({projectsId,owner,project_id,author,showNotification,newId}){ +function CollaboratorMember({projectsId,owner,project_id,author,showNotification,newId,flag}){ const [ roleName , setRoleName ] = useState(undefined); const [ search , setSearch ] = useState(undefined); const [ page , setPage ] = useState(1); @@ -20,11 +20,12 @@ function CollaboratorMember({projectsId,owner,project_id,author,showNotification const [ role , setRole ] = useState(undefined); const [ listData , setListData ] = useState(undefined); const [ total , setTotal ] = useState(0); + useEffect(()=>{ if(newId){ addCollaborator(newId); } - },[newId]) + },[flag]) // 增加协作者 function addCollaborator(id){ if(id){ @@ -276,4 +277,4 @@ function CollaboratorMember({projectsId,owner,project_id,author,showNotification ) } -export default CollaboratorMember; \ No newline at end of file +export default forwardRef(CollaboratorMember); \ No newline at end of file