diff --git a/src/components/UserVideo/index.tsx b/src/components/UserVideo/index.tsx index e9147a0..aca375c 100644 --- a/src/components/UserVideo/index.tsx +++ b/src/components/UserVideo/index.tsx @@ -59,6 +59,7 @@ const UserVideo: React.FC = () => { useEffect(() => { userList.forEach((item: any) => { + agora.destroyRendererByConfig(Number('1' + item.screenShareId)) agora.setupRemoteVideoEx({ uid: Number('1' + item.screenShareId), view: document.getElementById(`video-${item.screenShareId}`), @@ -74,7 +75,6 @@ const UserVideo: React.FC = () => { }; // 获取轮训用户 const getPolling = async (): Promise => { - setUserList([]) setFrom((res: any) => { GetPolling(state.channelId?.split('a')[0] as string, res.viewPeopleValue).then((res: any) => { if (res.code === 200) { diff --git a/src/utils/package/agora.ts b/src/utils/package/agora.ts index be6d7b3..ad5c49b 100644 --- a/src/utils/package/agora.ts +++ b/src/utils/package/agora.ts @@ -258,6 +258,9 @@ export const agora = { await agora.stopCameraCapture(); await rtcEngine.leaveChannelEx({ channelId: option.channelId + 'a', localUid: Number('1' + option.screenShareId) }) }, + destroyRendererByConfig: async (uid: number) => { + rtcEngine.destroyRendererByConfig(VideoSourceType.VideoSourceRemote, option.channelId + 'a', uid); + }, // ai降噪 setAINSMode: async (enabled: boolean, mode: AudioAinsMode) => { rtcEngine.setAINSMode(enabled, mode)