This commit is contained in:
yj 2024-08-09 17:38:31 +08:00
parent adadd234cf
commit 0bbf975ac0
1 changed files with 44 additions and 14 deletions

View File

@ -295,11 +295,11 @@ const Meeting: React.FC = () => {
break; break;
// 用户加入频道回调 // 用户加入频道回调
case 'UserJoined': case 'UserJoined':
console.log(item, '用户加入频道回调'); setAllUserListData('UserJoined', item)
break; break;
// 用户退出频道回调 // 用户退出频道回调
case 'UserLeave': case 'UserLeave':
console.log(item, '用户退出频道回调'); setAllUserListData('UserLeave', item)
break; break;
// 所有用户开闭麦 // 所有用户开闭麦
case 'OperAllMicr': case 'OperAllMicr':
@ -307,11 +307,11 @@ const Meeting: React.FC = () => {
break; break;
// 用户关闭开启麦克风 // 用户关闭开启麦克风
case 'OperMicr': case 'OperMicr':
setAllUserListData(item.user) setAllUserListData('OperMicr', item)
break; break;
// 用户开启关闭摄像头 // 用户开启关闭摄像头
case 'OperCamera': case 'OperCamera':
setAllUserListData(item.user) setAllUserListData('OperCamera', item)
break; break;
// 管理员用户信息刷新 // 管理员用户信息刷新
case 'ManagerRefresh': case 'ManagerRefresh':
@ -358,16 +358,46 @@ const Meeting: React.FC = () => {
}, [recorder]) }, [recorder])
// 替换数据 // 替换数据
const setAllUserListData = (user: any): void => { const setAllUserListData = (key: string, item: any): void => {
setAllUserList((res: any) => { switch (key) {
let item = res.find((row: any) => row.uid === user.uid) case 'OperMicr':
if (item) { case 'OperCamera':
for (const key in user) { setAllUserList((res: any) => {
item[key] = user[key]; let userItem = res.find((row: any) => row.uid === item.user.uid)
} if (userItem) {
} for (const key in item.user) {
return res userItem[key] = item.user[key];
}) }
}
return res
})
break;
case 'UserJoined':
setAllUserList((res: any) => {
let userItem = res.find((row: any) => row.uid === item.user.uid)
if (userItem) {
userItem.isRoom = true
for (const key in item.user) {
userItem[key] = item.user[key];
}
}
return res
})
break;
case 'UserLeave':
setAllUserList((res: any) => {
let userItem = res.find((row: any) => row.uid === item.uid)
if (userItem) {
userItem.isRoom = false
}
return res
})
break;
case 'ManagerRefresh':
break;
}
} }
// 网络 // 网络
const handleNetworkChange = (): void => { const handleNetworkChange = (): void => {