我在使用Angular材质MatDialog和使用Libcast的Iframe时遇到了一些问题。当我更改窗口大小或将视频设置为全屏时,我遇到了不同的问题。 在Chrome上:视频重新开始,我可以看到窗口正在刷新。 在Modzilla上:当我打开全屏并且它返回到无全屏页面时视频崩溃。
我尝试使用开发工具直接在MatDialog中添加iframe,但我没有遇到任何问题,它运行正常。
private openLibcastResource(resource: Resource) {
this.dialog.open(VideoComponent, {
data: {url: resource.sourceInfo.src},
});
}
@Component({
selector: 'app-video',
templateUrl: './video.component.html',
})
export class VideoComponent implements OnInit {
constructor(@Inject(MAT_DIALOG_DATA) public data: any,
public dialogRef: MatDialogRef<VideoComponent>,
private sanitizer: DomSanitizer) {
}
ngOnInit() {
}
public videoUrl() {
return this.sanitizer.bypassSecurityTrustResourceUrl(this.data.url);
}
}
<iframe [src]="videoUrl()" class="libcast_player" width="560" height="450" frameborder="0" scrolling="no" allowfullscreen="allowfullscreen" style="opacity: 1; visibility: visible;"></iframe>
您对发生的事情有什么想法吗?
答案 0 :(得分:0)
每次修改窗口大小时都会调用getUrl()。所以视频被重置了,这就是全屏崩溃的原因。