遇到问题:
ionic3 显示 base64 编码的图片报错,显示不出来,报错如下:
问题造成原因:
后面细看文档才发现:是因为 Ionic2 和 TypeScript 中对外部 ur 资源链接做了安全限制
解决问题:
1、在需要使用外部url链接的 .ts 文件中,引入DomSanitizer类
import { DomSanitizer } from '@angular/platform-browser';
constructor(private sanitizer: DomSanitizer) {}
2、在需要使用转换的url进行处理
/** 获取 activeUser */
getActiveUser(){
this.activeUser = this.nativeSer.getObject('activeUser');
if(this.activeUser){
let safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('data:image/png;base64,'+this.activeUser.logo);
this.userLogo = this.activeUser.logo ? safeUrl : DEFAULT_USER_IMG;
}
}
3、html中使用
这样问题就解决了