【发布时间】:2016-10-07 03:42:43
【问题描述】:
我正在尝试将来自 JSON 的 HTML 渲染到我的 React 组件中。我知道危险的SetInnerHTML 并且不打算使用它,因为我想在呈现的 HTML 中利用其他 React 组件。目前,只要关闭标签,我就可以渲染任何元素。但情况并非如此,因为如果我想将多个元素或 img 标签放在一个 div 中,我需要它保持打开状态,直到所有 img 标签都完成。我将不胜感激这方面的任何帮助。谢谢
render(){
var data = [
{
type: 'div',
open: true,
id: 1,
className: 'col-md-12 test',
value: ''
},
{
type: 'div',
open: false,
id: 1
}
]
var elements = data.map(function(element){
if(element.open){
return <element.type className={element.className}>
} else {
return </element.type>
}
})
return (
<div>
{elements}
</div>
)
}
webpack 错误
3 | return <element.type className={element.className}>
34 | } else {
> 35 | return </element.type>
| ^
36 | }
37 | })
38 | return (
@ ./src/index.js 9:11-38
【问题讨论】:
-
React 不渲染 HTML,它渲染 DOM 元素。您要么需要构建 HTML 并将其作为字符串注入,要么以编程方式构建元素;您采用的方法不是 React 方式。也许您应该说明您要解决的问题,我们可以为您提供一种更 Reactish 的方式来做事。
-
我正在开发一个 HTML 编辑器。我需要能够在页面上添加和存储每个元素。
标签: javascript html json reactjs