单击时单击按钮,注入一个html标记,代表要添加到购物车的新产品名称和数量。客户提交表单后,我希望这些产品存储在对象数组中。

我面临的问题是angular 6安全性,该安全性隐藏了一些类似输入的html标签。
    

试图绕过此安全问题,我创建了一个名为SafePipe的管道,该管道将html转换为DomSenitizer

<div [innerHTML]="htmltobeadded | safe>


这样可以在模板中正常工作。

在按钮方法内部,我使用javascript注入了htmltobeadd,安全问题再次出现。

document.getElementById("add").innerHTML = htmltobeadded


我使用safePipe.transform()将html转换为Domsenitizer

safehtml = safepipe.tranform(htmltobeadded)


并使用

document.getElementById("add").innerHTML = safehtml


错误:safehtml无法分配给字符串类型

最佳答案

错误:safehtml无法分配给字符串类型


您可以将强制转换为:

document.getElementById("add").innerHTML = safehtml as any

09-26 07:54