Автоматически освежающий iframe src в модальном угловом материале

Я новичок в Angular 9 и угловой материал.

У меня есть компонент, который отображается в Material Modal. В этом компоненте есть значения iframe и iframe src, передаваемые из родительского компонента.

Проблема: при открытии модального режима через определенное время сбрасывается iframe. Поэтому после воспроизведения видео, через несколько секунд, автоматически приостанавливается видео с 00:00. Поэтому, когда я снова играю, он играет с самого начала.

Сильфон это моя структура кода

Module.ts

 entryComponents: [VideoModalComponent,...]

Видео-modal.component.ts

  import {Component, OnInit, Inject} from '@angular/core'
  import {MAT_DIALOG_DATA} from '@angular/material'
  import {DomSanitizer} from '@angular/platform-browser'

  @Component({
    selector: 'app-video-modal',
    templateUrl: './video-modal.component.html',
    styleUrls: ['./video-modal.component.scss']
  })
  export class VideoModalComponent implements OnInit {

    constructor(
      public domSanitizer: DomSanitizer,
      @Inject(MAT_DIALOG_DATA) public data: any
    ) {
    }

    ngOnInit() {
    }

  }

видео-modal.component.html

<iframe [width]="(data.videoWidth - 50)" [height]="data.videoHeight"
    [src]="domSanitizer.bypassSecurityTrustResourceUrl(data.videoUrl)" frameborder="0"
    allowfullscreen></iframe>

section.component.ts

openPromoModal(): void {
    this.dialog.open(VideoModalComponent, {
      width: this.videoWidth + 'px',
      data: {
        videoUrl: this.promotionalVideo.url,
        videoWidth: this.videoWidth,
        videoHeight: this.videoHeight
      },
    });
  }

Всего 1 ответ


Исходя из моего комментария, не рекомендуется очищать URL-адреса непосредственно в шаблоне. Он будет вызван несколько раз из-за обнаружения изменений.

Лучше было бы очистить их в контроллере и передать очищенный URL-адрес свойству [src] .


Есть идеи?

10000