dav*_*lav 2 html javascript aurelia
我正在尝试通过字符串插值将标记文本添加到 Aurelia 模板中的 div,但是其中的 HTML 被呈现为文字文本而不是 HTML。例如:
// in view-model
htmlString = "Line 1 <br> Line 2";
// in view template
<template>
<div>
${htmlString}
</div>
</template>
Run Code Online (Sandbox Code Playgroud)
被渲染为
Line 1 <br> Line 2
Run Code Online (Sandbox Code Playgroud)
而不是作为
Line 1
Line 2
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点,以便将插入的文本识别为 HTML 而不是字符串文字?
您可以使用
<template>
<div innerhtml.bind="htmlString"></div>
</template>
Run Code Online (Sandbox Code Playgroud)
但是在将它与任何用户生成的 HTML 一起使用时,您需要非常小心,因为在使用它时注入到 DOM 中的 HTML 几乎没有任何清理。