我想借助此代码播放音频并且工作正常
ngOnInit () {
const a = new Audio();
a.src = '../../assets/hello.wav';
a.load();
// auto-start
a.play();
}
但是,当我单击“下一步按钮”时,会引导我进入下一页(因此我在路由的帮助下更改了我的组件)音频将不会停止(不会中断),音频中的音乐也会在下一页播放。我应该在代码中添加什么才能通过更改分页音频来实现?
答案 0 :(得分:4)
您应将audio
定义为组件的字段(以便在ngOnDestroy中访问它)并在ngOnDestroy
将其销毁。
audio: any;
ngOnInit () {
this.audio = new Audio();
this.audio.src = '../../assets/hello.wav';
this.audio.load();
// auto-start
this.audio.play();
}
ngOnDestroy() {
// destroy audio here
if(this.audio) {
this.audio.pause();
this.audio = null;
}
}