Reactjs 未能执行';removeChild';组件正在卸载时
我目前正在集成一个视频聊天,人们可以在不同的房间之间切换。那部分很好用。现在我想添加一个附加组件。如果在加载每日组件时单击“另一个组件”,则会出现错误: 无法在“节点”上执行“removeChild”:要删除的节点为 不是此节点的子节点 错误的视频示例: 我创建了以下沙箱来演示该问题:Reactjs 未能执行';removeChild';组件正在卸载时,reactjs,Reactjs,我目前正在集成一个视频聊天,人们可以在不同的房间之间切换。那部分很好用。现在我想添加一个附加组件。如果在加载每日组件时单击“另一个组件”,则会出现错误: 无法在“节点”上执行“removeChild”:要删除的节点为 不是此节点的子节点 错误的视频示例: 我创建了以下沙箱来演示该问题: 问题似乎与dailyRef.current.destroy()有关。如果视频未处于“已加载完成”状态,则无法执行它。这是每日销毁方法的实现 async destroy(){ 试一试{ “已加入会议”==此。_me
问题似乎与
dailyRef.current.destroy()有关代码>。如果视频未处于“已加载完成”状态,则无法执行它。这是每日销毁方法的实现
async destroy(){
试一试{
“已加入会议”==此。_meetingState&&(等待此。离开());
}捕获(t){}
设t=this.iframe();
if(t){
设e=t.parentElement;
e&e.removeChild(t);
}
window.removeEventListener(“message”,this.\u messageListener);
}
您可以从这些必要的位中提取,并且只能清除事件侦听器
return () => {
try {
"joined-meeting" === daily._meetingState && (await daily.leave());
} catch (t) {}
window.removeEventListener("message", daily._messageListener);
};
这是daily.destroy
方法的一个实现
async destroy(){
试一试{
“已加入会议”==此。_meetingState&&(等待此。离开());
}捕获(t){}
设t=this.iframe();
if(t){
设e=t.parentElement;
e&e.removeChild(t);
}
window.removeEventListener(“message”,this.\u messageListener);
}
您可以从这些必要的位中提取,并且只能清除事件侦听器
return () => {
try {
"joined-meeting" === daily._meetingState && (await daily.leave());
} catch (t) {}
window.removeEventListener("message", daily._messageListener);
};