Angular 中的对象属性值清理问题

问题描述

我有一个 MemberInfo 类。有一个属性是照片。现在我想创建一个具有属性值的 memberinfo 对象。代码如下:

    let info = new MemberInfo();
    info.MemberId = "101";
    info.MemberName = "Mohammad Nasir uddin";
    info.Type = "General";
    info.Category = "A";
    info.BloodGroup = "B+";
    info.MobileNo = "012589652357";
    info.Photo = this.sanitizer.bypassSecurityTrustUrl("'https://www.gravatar.com/avatar/205e460b479e2e5b48aec07710c08d50'");  
    info.ShopNo = "101";
    info.ShopName = "Yellow Computers";
    info.Floor = "First Floor";

this.selectedMember = info;

为了制作安全的图片网址,我已经对其进行了消毒。但它显示了编译时错误

类型 'SafeUrl' 不可分配给类型 'string'。信息.照片 = this.sanitizer.bypassSecurityTrustUrl("'https://www.gravatar.com/avatar/205e460b479e2e5b48aec07710c08d50'")

将照片绑定到 html 我使用了以下代码

<img [src]="selectedMember.Photo" class="mr-2">

我该如何解决问题?

解决方法

DomSanitizer bypassSecurityTrustUrl 方法从 @angular/platform-b​​rowser 命名空间返回一个 SafeUrl 对象。

现在将 MemberInfo 类中的 Photo 属性修改为 SafeUrl 类型或 any 类型。

谢谢。