[英]Rendering content with HTML tags in Ractive.js
我正在嘗試在由Ractive.js呈現的數據中包含HTML標記(對於自動下標化學符號,以防有人關心),但Ractive只是插入文本而不是創建新的DOM元素。
一個最小的測試用例,改編自60秒的設置指南 :
<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>' }
});
正如你在這個JSfiddle中看到的那樣 ,結果是Hello, <b>world</b>
而不是預期的“Hello, world ”
我猜這是與Ractive處理表達式的方式有關...但我還沒有達到源有用的意義。
有關如何獲得預期行為的任何想法?
是! 你可以使用三重文章:
<p>Hello, {{{name}}}!</p>
在傳統的胡子中,這意味着“不要逃避name
的價值”。 轉換為Ractive,意味着'將內容插入HTML而不是文本。
請注意 ,HTML在插入之前不會被清理,因此如果name
來自用戶輸入,則可能存在XSS和其他惡意內容: http : //jsfiddle.net/rich_harris/4jBC8/ 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.