Riot 每个构建 HTML 标记
riot each build html tags
我是Riot的新手.js并且在从对象构建html元素时遇到问题。我有一个这样的结构:
var self = this;
self.objects = [
{ tag: "h1", text: "hello" },
{ tag: "h2", text: "world" }
];
我想在浏览器中得到这样的东西
<h1>hello</h1>
<h2>world</h2>
这就是我所拥有的
<virtual each={objects}><{ tag }> { text } </{ tag }></virtual>
它给了我
"<h1>hello<h1>"
"<h2>world<h2>"
如何删除"
引号?或者如何改进我的代码以在页面上显示真正的 html 标记,而不是字符串?
http://riotjs.com/guide/#render-unescaped-html
Riot 表达式只能呈现文本值,而不能呈现 HTML 格式。但是,您可以创建自定义标记来完成这项工作。
创建自定义raw
标记:
<raw>
<script>
this.root.innerHTML = opts.content
</script>
</raw>
使用它来呈现 html:
<raw content="{'<' + tag + '>' + text + '</' + tag + '>'}" each="{ objects }" />
<script>
this.objects = [
{ tag: 'h1', text: 'hello' },
{ tag: 'h2', text: 'world' }
];
</script>
可以使用virtual
标签和data-is
组合来摆脱包装raw
标签:
<virtual data-is="raw" content="{'<' + tag + '>' + text + '</' + tag + '>'}" each="{ objects }" />
现场示例:http://plnkr.co/edit/ZQxJNfqvdSvWpMk8z0ej?p=preview
相关文章:
- 制作一个不带HTML a标记但在动画播放完毕后指向其他页面的超链接
- HTML标记在脚本标记中工作
- 是否可以添加这行“;“照原样”;在HTML标记中
- 一个正则表达式,用于从JS中的HTML标记中删除id、样式和类属性
- 如果匹配项在特定的html标记中,则跳过regex匹配
- 使用 Pure JS 更改 HTML 标记名称
- 如何使用javascript选择字符串的部分,添加html标记或删除部分
- HTML标记,包含带引号的JavaScript代码中的引号
- 如何在JavaScript中创建打字机效果,这将考虑html标记规则
- 将c#视图模型转换为javascript模型时转义HTML标记
- Regex剥离具有特定属性的html标记
- 如何在不创建格式错误的HTML标记的情况下分解字符串
- HTML 标记未在 AngularJS ckEditor 中应用,而是在 Ediator 中显示 HTML 元素标记代码
- 如何在angularJS中运行for循环而不使用html标记
- Riot 每个构建 HTML 标记
- 用HTML标记+ 替换关闭的HTML标记
- 存储包含html标记的文本
- Regex以转义HTML标记
- 在html标记中序列化javascript代码
- JS来显示HTML标记