2016-08-12 519 views
0

我有一个元素列表(相同元素),需要在页面内多次渲染。我看到的ReactDOM.render的所有例子都表明它只能渲染一个元素。有没有办法呈现元素列表?ReactDOM渲染元素列表

注意:元素可能会出现在整个页面上。我无法制作呈现多个元素的列表类,例如<ElementList/>

香草用法:

ReactDOM.render(
<Element/>, 
document.getElementById('Element')); 

有没有办法中的元素或等价的东西的清单来传递,而不是如

ReactDOM.render(
<Element/>, 
listOfElements); 

我知道我可以写一个包装函数,并调用文件.getElementById()多次,但有内置的反应,可以处理这种情况?

回答

3

可以使用forEach功能:

listOfElements.forEach(el => ReactDOM.render(<Element/>, el); 
+0

@ maddox2我不知道我们能做到这一点。这很酷。这是否意味着React现在必须管理一些虚拟doms?每个元素一个? – KumarM

+1

@KumarM是的,为每个'ReactDOM.render'调用创建组件。这些组件是孤立的,每个都有自己的虚拟dom。 – madox2

+0

@ maddox2谢谢。我想知道它是否有任何性能影响。但也许这本身就是一个不同的问题。 – KumarM