This commit is contained in:
parent
a0f6598649
commit
83e3a2aedc
|
|
@ -139,6 +139,7 @@ const Meeting: React.FC = () => {
|
|||
const msgTips = '您不是管理员或发言人,无法开启此功能!'
|
||||
useEffect(() => {
|
||||
let time = null as any;
|
||||
let refreshVideoViewTime = null as any;
|
||||
setUser(userInfo)
|
||||
setTimeout(() => {
|
||||
window.electron.getIsMaximized().then((res: boolean) => {
|
||||
|
|
@ -216,11 +217,15 @@ const Meeting: React.FC = () => {
|
|||
time = setInterval(() => {
|
||||
setCurrentSeconds(currentSeconds++)
|
||||
}, 1000)
|
||||
refreshVideoViewTime = setInterval(() => {
|
||||
RefreshVideoView()
|
||||
}, 3000)
|
||||
return () => {
|
||||
window.removeEventListener('customStorageChange', handleCustomStorageChange);
|
||||
window.removeEventListener('online', handleNetworkChange);
|
||||
window.removeEventListener('offline', handleNetworkChange);
|
||||
clearInterval(time)
|
||||
clearInterval(refreshVideoViewTime)
|
||||
};
|
||||
}, []);
|
||||
|
||||
|
|
@ -468,23 +473,26 @@ const Meeting: React.FC = () => {
|
|||
})
|
||||
}
|
||||
// 刷新视图
|
||||
const RefreshVideoView = async (list: any): Promise<void> => {
|
||||
list.forEach(async (item: any) => {
|
||||
if (item.uid === userInfo.uid) {
|
||||
await agora.setupLocalVideo({
|
||||
uid: Number(item.uid),
|
||||
view: document.getElementById(`video-${item.uid}`),
|
||||
channelId: state.channelId,
|
||||
sourceType: VideoSourceType.VideoSourceCameraPrimary,
|
||||
})
|
||||
} else {
|
||||
await agora.setupRemoteVideo({
|
||||
uid: Number(item.uid),
|
||||
view: document.getElementById(`video-${item.uid}`),
|
||||
channelId: state.channelId,
|
||||
})
|
||||
}
|
||||
});
|
||||
const RefreshVideoView = async (): Promise<void> => {
|
||||
setRoomUserList((res: any) => {
|
||||
res.forEach(async (item: any) => {
|
||||
if (item.uid === userInfo.uid) {
|
||||
await agora.setupLocalVideo({
|
||||
uid: Number(item.uid),
|
||||
view: document.getElementById(`video-${item.uid}`),
|
||||
channelId: state.channelId,
|
||||
sourceType: VideoSourceType.VideoSourceCameraPrimary,
|
||||
})
|
||||
} else {
|
||||
await agora.setupRemoteVideo({
|
||||
uid: Number(item.uid),
|
||||
view: document.getElementById(`video-${item.uid}`),
|
||||
channelId: state.channelId,
|
||||
})
|
||||
}
|
||||
});
|
||||
return res
|
||||
})
|
||||
}
|
||||
// 替换数据
|
||||
const setAllUserListData = async (key: string, item: any, callBack?: Function): Promise<void> => {
|
||||
|
|
@ -512,9 +520,6 @@ const Meeting: React.FC = () => {
|
|||
setRoomUserList((res: any) => {
|
||||
let userItemIndex = res.findIndex((row: any) => row.uid === item.uid)
|
||||
res.splice(userItemIndex, 1)
|
||||
setTimeout(() => {
|
||||
RefreshVideoView(res)
|
||||
}, 1000);
|
||||
return res
|
||||
})
|
||||
break;
|
||||
|
|
|
|||
Loading…
Reference in New Issue