gpt4 book ai didi

javascript - 在 Ractive.js 中使用 HTML 标签渲染内容

转载 作者:太空宇宙 更新时间:2023-11-04 13:46:55 25 4
gpt4 key购买 nike

我试图在 Ractive.js 呈现的数据中包含 HTML 标签(以自动下标化学符号,以防有人关心),但 Ractive 只是插入文本而不是创建新的 DOM 元素。

一个最小的测试用例,改编自 60-second setup guide :

<script id='template' type='text/ractive'>
<p>Hello, {{name}}!</p>
</script>

<script type="text/javscript">
var ractive = new Ractive({
el: 'container',

template: '#template',

data: { name: '<b>world</b>' }
});

正如您在 this JSfiddle 中看到的那样, 结果是 Hello, <b>world</b>而不是预期的“你好,世界

我猜这与 Ractive 处理表达式的方式有关。但我还没有达到源代码有意义的地步。

关于如何获得预期行为的任何想法?

最佳答案

是的!您可以使用三重缓存:

<p>Hello, {{{name}}}!</p>

在传统的 Mustache 中,这意味着“不要转义 name 的值”。翻译成 Ractive,它的意思是“将内容作为 HTML 而不是文本插入。”

请注意 HTML 在插入之前未经过清理,因此如果 name 来自用户输入,则可能存在 XSS 和其他恶意行为:http://jsfiddle.net/rich_harris/4jBC8/ .

关于javascript - 在 Ractive.js 中使用 HTML 标签渲染内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23514951/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com