我试图加载一个音频,我得到两个错误,但一切都很好,来源是正确的。
错误:
javascript:
this.sound = new Audio();
this.sound.src = 'src/assets/sound/welcome_Rift.mp3';
this.sound.load();
this.sound.play();文件路径:src/资产/声音/欢迎_Rift.mp3
我不知道我为什么要犯这个错误,有人能帮我吗?
发布于 2020-09-12 16:45:41
GET http://localhost:4200/src/assets/sound/welcome_Rift.mp3 404 (未找到)
404错误表示您的媒体文件未被找到。这可能是很多事情。如果路径是正确的,那么可能是本地主机服务器,它不知道src/assets/sound/welcome_Rift.mp3应该指向哪里。也许可以检查来自src/welcome_Rift.mp3的文件是否有效,以查看问题所在。
DOMException:未能加载,因为没有找到支持的源。
这是因为HTMLMediaElement.play()返回一个Promise。它表示Uncaught in promise的部分意味着承诺无法处理错误,应该向其中添加一些带有catch()方法的允诺逻辑。此方法允许您在发生错误时执行某些操作。
this.sound = new Audio();
this.sound.src = 'src/assets/sound/welcome_Rift.mp3';
this.sound.load();
this.sound.play()
.then(() => {
// Audio is playing.
})
.catch(error => {
console.log(error);
});旧浏览器在执行play()时可能不会返回承诺,因此在这种情况下,您应该检查它是否返回承诺。
this.sound = new Audio();
this.sound.src = 'src/assets/sound/welcome_Rift.mp3';
this.sound.load();
const promise = this.sound.play();
if (promise !== undefined) { // On older browsers play() does not return anything, so the value would be undefined.
promise
.then(() => {
// Audio is playing.
})
.catch(error => {
console.log(error);
});
}https://stackoverflow.com/questions/63862495
复制相似问题