对于某些上下文,我有一系列全景图像,每个图像都有一个与之关联的不同音频文件(mp3)。当全景图像改变时,我正在尝试播放相关的音频src,但是我似乎无法断开先前的音频src。
<a-assets>
<audio
id="vr-audio"
src={`http://res.cloudinary.com/concept3d/video/upload/audio_files/${trackId}`}
preload="auto"
/>
</a-assets>
{Boolean(tracks.length) && <a-entity sound="src: #vr-audio" />}当全景图改变并从我的组件状态中拉出时,插值的trackId也会改变。我可以看到音频src url正在按预期更改,但是当我查询声音实体时,声音src没有更新为新的url。
任何建议都是值得感谢的。
发布于 2018-09-14 18:44:48
不要在适当的位置改变音频元素,组件不会捕捉到它。改为更改声音组件的src属性。它可以接受一个URL。除非用于预加载,否则实际上并不需要<a-assets>。
soundEl.setAttribute('sound', 'src', 'http://res.cloudinary.com/concept3d/video/upload/audio_files/${trackId}');如果您想要控制音频元素,则创建一个新的音频元素并分配新的ID。
https://stackoverflow.com/questions/52320298
复制相似问题