0
我正在嘗試創建角度爲2的YouTube播放器服務。 服務應提供兩個方法:Typescript - 調用序列中的異步方法
- playRange - 播放視頻的給定範圍,並在年底跳轉到一個特定的時間在視頻中。範圍是一個數組[開始,結束,返回時間]。 爲了在指定時間停止視頻,我需要使用setInterval來檢查視頻的當前位置,它使該方法異步。
- playScript - 播放一個腳本,它是一個範圍數組。所以基本上它應該按順序播放幾個範圍。
的playRange實現:
playRange(range: any) {
if (this.player) {
console.log('Playing range:' + range)
const start: number = +range[0];
const end: number = +range[1];
const returnTime: number = range.lenth === 3 ? range[0] : range[2];
this.player.seekTo(start, true);
clearInterval(this._rangeTimer);
if (this.player.getPlayerState() !== YT.PlayerState.PLAYING) {
this.player.playVideo();
}
this._rangeTimer = setInterval(() => {
const currentTime = this.player.getCurrentTime();
if (currentTime >= end) {
this.pause();
clearInterval(this._rangeTimer);
this.player.seekTo(returnTime, true);
}
}, 200);
}
}
我應該如何落實腳本,所以我可以重複範圍的序列,並通過一個發揮他們嗎?