我遇到了一个与Angular 6和显示base64格式编码的图像相关的问题。你知道为什么下面显示的代码不显示图像吗?
网页:
<tr *ngFor="let row of this.UploaderService.tableImageRecognition.dataRows">
<img src="{{this.hello}}" />
测试:
this.hello = "data:image/png;base64, /9j/4AAQSkZJRgABAQAAA..."
下面显示的代码是否正常工作并显示图片?
网页:
<tr *ngFor="let row of this.UploaderService.tableImageRecognition.dataRows">
<!--<img src="data:image/png;base64, /9j/4AAQSkZJRgABAQAAA..."/>
在构造函数中赋值,只是为了测试,我是这样创建的,我的主要目标是在这个循环中显示,所以在第一次迭代中,我会显示图像,然后在下一次迭代中,显示图像。this.UploaderService.tableImageRecognition.dataRows
的长度总是和this.UploaderService.imageRecognitionRowsData
一样当我添加<p>{{this.hello}}</p>
的时候,我得到了相同的html字符串,我不知道出了什么问题,我也尝试了this.hello2 = this.sanitizer.bypassSecurityTrustResourceUrl(this.hello);
,this.hello2 = this.sanitizer.bypassSecurityTrustUrl(this.hello);
,<img [src]="this.hello" />
等,但没有工作。有什么想法如何解决这个问题?
4条答案
按热度按时间aij0ehis1#
不要使用“this”来引用组件“ts”文件中定义的变量。删除“this”可能会解决问题。
请查看这个stackbliz Fiddle。看看里面的应用程序组件,看看实现。
StackBlitz
hwamh0ep2#
这就是我在使用base64图像时的效果。
超文本:
组件:
8iwquhpp3#
Angular中的html模板没有使用
this
,默认所有变量/成员方法都解析在类上,直接访问变量如下:b5buobof4#
在image变量中传递base64代码