fix: group update SSE event

This commit is contained in:
zerosoul
2022-05-18 22:15:45 +08:00
parent 03bce1b724
commit 45e9e4ef6d
4 changed files with 24 additions and 12 deletions
-3
View File
@@ -1,8 +1,5 @@
import { useEffect, useState } from "react";
// import TextareaAutosize from "react-textarea-autosize";
import { useDispatch, useSelector } from "react-redux";
// import { useKey } from "rooks";
import useSendMessage from "../../hook/useSendMessage";
import useAddLocalFileMessage from "../../hook/useAddLocalFileMessage";
import { updateInputMode, updateUploadFiles } from "../../../app/slices/ui";
+22 -7
View File
@@ -228,6 +228,17 @@ export default function useStreaming() {
console.log("joined group", data.group);
dispatch(addChannel(data.group));
break;
case "group_changed":
{
const { gid, ...rest } = data;
dispatch(
updateChannel({
id: gid,
...rest,
})
);
}
break;
case "user_joined_group":
{
console.log("new user joined group", data.gid);
@@ -245,13 +256,17 @@ export default function useStreaming() {
case "user_leaved_group":
{
const { gid, uid: uids } = data;
dispatch(
updateChannel({
operation: "remove_member",
id: gid,
members: uids,
})
);
if (uids.findIndex((id) => id == loginUid) > -1) {
dispatch(removeChannel(gid));
} else {
dispatch(
updateChannel({
operation: "remove_member",
id: gid,
members: uids,
})
);
}
}
break;
case "kick_from_group":