【发布时间】:2017-04-03 11:09:21
【问题描述】:
我正在尝试在 angular2 中使用 YouTube iFrame API,但遇到了问题。
let onStateChange = (state) => {
if (state.data === window['YT'].PlayerState.PLAYING) {
console.log("window['YT'].PlayerState.PLAYING");
this.isPlaying = true;
}
if (state.data === window['YT'].PlayerState.PAUSED) {
console.log("window['YT'].PlayerState.PAUSED");
this.isPlaying = false;
}
};
然后
this.player = new window['YT'].Player("video-player", {events: { onStateChange } });
处理播放器事件的回调被执行,但视图没有得到更新。
这里是视图:
<button class="control" (click)="play()" *ngIf="!isPlaying">Play</button>
<button class="control" (click)="pause()" *ngIf="isPlaying">Pause</button>
当我点击“播放”时,视频会播放,但“暂停”按钮没有出现(“播放”按钮也没有消失)。
当我再次单击未隐藏的“播放”按钮时,视频继续播放,“播放”按钮被“暂停”取代。所以它第二次起作用了。
我已经用谷歌搜索过了,但没有找到解决方案:
【问题讨论】:
标签: javascript angular youtube