相关平台
H5
浏览器版本: 微信开发者工具调试h5
使用框架: React
复现步骤
const audioRef = useRef(null)
const { source } = props;
useEffect(()=> {
if (audioRef.current) {
audioRef.current.stop();
audioRef.current.destroy();
}
// 创建新的音频上下文
const innerAudioContext = Taro.createInnerAudioContext();
audioRef.current = innerAudioContext;
// 设置音频源
if (source) {
innerAudioContext.src = source;
innerAudioContext.play(); // 开始播放音频
}
// 清理函数,在组件卸载时执行
return () => {
innerAudioContext.destroy();
};
}, [source]);
期望结果
正常不报错
实际结果
Uncaught DOMException: Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of this node.
at Object.iac.destroy
环境信息
👽 Taro v3.2.0
Taro CLI 3.2.0 environment info:
System:
OS: Windows 10
Binaries:
Node: 16.18.1 - D:\NVM\nodejs\node.EXE
Yarn: 1.22.19 - D:\Program Files\bin\yarn.CMD
npm: 8.19.2 - D:\NVM\nodejs\npm.CMD
2条答案
按热度按时间cngwdvgl1#
Taro v3.2.0 版本太老了,可以升级到最新版本试试,或者给个复现仓库链接
y0u0uwnf2#
Taro v3.2.0 版本太老了,可以升级到最新版本试试,或者给个复现仓库链接
老项目,不太方便升级;确实是源码里面报错了,我看后面版本已经修复了