Автоматически обновляемый iframe sr c in angular модальный материал - PullRequest
0 голосов
/ 25 марта 2020

Я новичок в материалах Angular 9 и angular.

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

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

Ниже приведена структура моего кода

Module.ts

 entryComponents: [VideoModalComponent,...]

Video-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() {
    }

  }

video-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 Ответ

1 голос
/ 25 марта 2020

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

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

...