小编For*_*o96的帖子

Angular 7 iframe历史后退按钮问题

我正在使用 Angular 开发 SPA。当按下历史后退按钮时,浏览器仅更改 Youtube iframe 而不是整个页面,我需要按两次后退按钮才能进入完整的上一页(第一次 URL 未更新)。仅当遵循涉及 YT iframe 元素的同一路线的 2 个链接时,才会发生这种情况。我需要保留历史导航,所以我不能只删除历史元素

Component
export class PlayerComponent implements OnInit {
  videoName: string;
  videoUrl: any;

  constructor(
    private sanitizer: DomSanitizer,
    private route: ActivatedRoute
  ) {}

  ngOnInit() {
    this.route.params.subscribe( params => {
      this.videoUrl = this.sanitizer.bypassSecurityTrustResourceUrl('https://www.youtube.com/embed/' + params.videoId);
    });
  }
}

HTML
<div class="embed-responsive embed-responsive-16by9">
  <iframe class="embed-responsive-item border border-primary" *ngIf="videoUrl"
    [src] = "videoUrl"
    allowfullscreen>
  </iframe>
</div>
Run Code Online (Sandbox Code Playgroud)

typescript angular

4
推荐指数
1
解决办法
3614
查看次数

标签 统计

angular ×1

typescript ×1