最近做APP项目时,遇到一个需求,就是页面内嵌外部网页,考虑用<iframe>标签实现,代码如下:
<iframe style="width: 100%;height: 100%;" src="{{this.webUrl}}">
</iframe>
本来以为没毛病,谁知道,翻车来的太快!!!
咋把这事给忘了,真是大意失荆州啊,下面奉上解决代码。。
首先引入:DomSanitizer
import { DomSanitizer } from '@angular/platform-browser';
在构造器中定义:
constructor(
public navCtrl: NavController,
public sanitizer: DomSanitizer,
public navParams: NavParams) {
}
处理跳转链接:
this.url = "https://www.baidu.com/";
this.webUrl = this.sanitizer.bypassSecurityTrustResourceUrl(this.url);
页面引用:
<iframe style="width: 100%;height: 100%;" [src]="this.webUrl">
</iframe>
细心的网友可能已经发现了,页面引用部分由原来的 src 变成了 [src],([]:属性绑定语法,这个至关重要,不然还是解决不了我问题)。。。
呐,就到这吧 ~ ~ ~