From 6824ebbb48510ddc9acb093d81c6fe9dcf8d4049 Mon Sep 17 00:00:00 2001
From: xxl <3578144921@qq.com>
Date: Sat, 13 Jul 2024 16:11:58 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=E7=BE=A4=E7=BB=84?=
=?UTF-8?q?=E9=80=89=E6=8B=A9=E6=88=90=E5=91=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/views/home/group/CreateGroup.jsx | 85 +++++++++++++++++--
1 file changed, 77 insertions(+), 8 deletions(-)
diff --git a/front-end/src/views/home/group/CreateGroup.jsx b/front-end/src/views/home/group/CreateGroup.jsx
index 3dcffcf..5c59aca 100644
--- a/front-end/src/views/home/group/CreateGroup.jsx
+++ b/front-end/src/views/home/group/CreateGroup.jsx
@@ -1,6 +1,6 @@
import {useLocation, useNavigate} from "react-router-dom";
-import {memo, useEffect, useState} from "react";
-import {Avatar, Button, Divider, Flex, Input, List, message, Space, Typography, Upload} from "antd";
+import {memo, useEffect, useRef, useState} from "react";
+import {Avatar, Button, Divider, Flex, Input, List, message, Modal, Space, Typography, Upload} from "antd";
import {getUploadUrl} from "@/http/api/file.api.js";
import {getToken} from "@/http/http.request.js";
import {UploadOutlined} from "@ant-design/icons";
@@ -8,6 +8,8 @@ import {isNullOrUndefined} from "@/lib/toolkit/util.js";
import {useFetch} from "@/hook/useFetch.jsx";
import {doCreateOrModify} from "@/http/api/group.info.api.js";
import {ChatList} from "@/component/list/ChatList.jsx";
+import {useSelector} from "react-redux";
+import {doQueryUserInfos} from "@/http/api/user.api.js";
const { Title } = Typography;
const CreateGroup = memo(() => {
@@ -57,10 +59,6 @@ const CreateGroup = memo(() => {
},
};
- useEffect(() => {
- console.log(doCreateOrModifyResp)
- });
-
const data = (()=>{
const arr =[]
for (let i = 0; i < 30; i++) {
@@ -102,8 +100,13 @@ const CreateGroup = memo(() => {
群组成员}
- data={data}
+ header={(
+
+ 群组成员
+
+
+ )}
+ data={[]}
renderItem={item => {
return (
@@ -119,5 +122,71 @@ const CreateGroup = memo(() => {
)
})
+const SelectMember = memo(({getSelectMembers}) => {
+ const [open, setOpen] = useState(false);
+ const {friendList} = useSelector(state => state.friendInfo)
+ const [doQueryUserInfosResp,doQueryUserInfosProxy] = useFetch(doQueryUserInfos)
+ const [friendInfos, setFriendInfos] = useState([])
+ const selectMemberRef = useRef([])
+ const [disable, setDisable] = useState([])
+
+ useEffect(() => {
+ !isNullOrUndefined(doQueryUserInfosResp) && setFriendInfos(doQueryUserInfosResp.data)
+ }, [doQueryUserInfosResp]);
+
+
+ useEffect(() => {
+ friendList.length > 0 && doQueryUserInfosProxy(friendList.map(t => t.friendId))
+ }, [friendList]);
+
+ const handleOk = () => {
+ getSelectMembers(selectMemberRef.current)
+ setOpen(false);
+ };
+
+ return (
+ <>
+
+ setOpen(false)}
+ >
+ (
+
+ }
+ title={{item.nickname}
}
+ />
+ {
+ isNullOrUndefined(disable.find(t => t === item.id)) ?
+
+ :
+
+ }
+
+ )}
+ />
+
+ >
+ )
+})
+
export default CreateGroup
\ No newline at end of file