リンク(project.projectUrl)をiframe内にバインドしようとしていますが、機能しないようです。 JSONファイルのprojectUrlをiframe srcにバインドして、可能であればモーダル内から動的にiframeを表示できるようにしています。以下のコメントで私のコードを参照してください。
Srcをsanitizeする必要があります。 https://angular.io/api/platform-browser/DomSanitizer#bypassSecurityTrustResourceUrl 。
コンポーネントコンストラクターでこれを行う方法の1つ:
constructor(sanitizer: DomSanitizer, ....)
その後
<iframe [src]="sanitizer.bypassSecurityTrustResourceUrl(project.projectUrl)" height="600" width="1000"></iframe>
あなたはangularを使用してhtmlインジェクターを間違っています
<iframe [src]="project.projectUrl" height="600" width="1000"></iframe>
または
<iframe src="{{project.projectUrl}}" height="600" width="1000"></iframe>
両方を行う場合は、基本的にこれを{{project.projectUrl}}
の代わりにTypeScript project.projectUrl
で呼び出すことになります。[src]
を使用することをお勧めします。これは、ドキュメントで示唆されており、読みやすいためです。
うまくいけば:)
JavaScriptで問題を修正しました。
この場合、[]
または{{}}
を使用しないでください。
viewChildまたは他の何かによってテンプレートに要素を取得し、それに属性を設定します。
これがコード例です。
HTMLテンプレート
<iframe #iframe height="600" width="1000"></iframe>
あなたのコンポーネントで
export class Component implements AfterViewInit {
@ViewChild('iframe') iframe: ElementRef
ngAfterViewInit() {
this.iframe.nativeElement.setAttribute('src', project.projectUrl);
}
}