代码之家  ›  专栏  ›  技术社区  ›  integral100x

角度7与iframe链接

  •  0
  • integral100x  · 技术社区  · 5 年前

    我试图在iframe中绑定一个链接(project.projectUrl),但似乎无法使其正常工作。我正在尝试将JSON文件中的projectUrl绑定到iframe src,这样如果可能的话,我就可以从modal中动态显示iframe。请看我的代码在下面的评论。

    1 回复  |  直到 5 年前
        1
  •  11
  •   avramz    5 年前

    你需要 消毒 src。 https://angular.io/api/platform-browser/DomSanitizer#bypassSecurityTrustResourceUrl

    constructor(sanitizer: DomSanitizer, ....)
    

    然后

    <iframe [src]="sanitizer.bypassSecurityTrustResourceUrl(project.projectUrl)" height="600" width="1000"></iframe>
    
    
        2
  •  5
  •   Ashot Aleqsanyan    5 年前

    我用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);
      }
    }
    
    
        3
  •  1
  •   Alex Dunlop    5 年前

    我相信你用的角度是错的

    <iframe [src]="project.projectUrl" height="600" width="1000"></iframe>
    

    <iframe src="{{project.projectUrl}}" height="600" width="1000"></iframe>
    

    如果你同时做这两件事,你基本上是在用typescript调用它 {{project.projectUrl}} 而不仅仅是 project.projectUrl [src] 这是文件中的建议,更容易阅读。