我正在使用Angular 7和Spotify WEB API,并提供了一项将所有播放和监视播放状态逻辑放在一个位置的服务。
为简单起见,我会讲一些逻辑。
通过以下方式调用服务:
play() {
this._service.playTracks(this.tracks);
console.log('Playing mock track list');
this.monitorPlayback();
}
播放一系列歌曲,然后启动监听。
monitorPlayback () {
interval(15000).subscribe(() => {
monitoring logic here;
});
此功能GET是用户当前的播放状态,以对其进行处理-对这个问题无关紧要。
现在这是我的问题。如果我多次将歌曲排队-整个事情(显然)会触发两次。因此,我不是每15秒轮询一次,而是两次。如何杀死已经启动的monitorPlayback()实例?我不想添加更多当前播放的逻辑(但是可能会改变)。