今天我开始学习 ReactJS,一个小时后我面对这个问题。 我想在页面的 div 中插入一个包含两行的组件。
我有一个 html:
<html>
..
<div id="component-placeholder"></div>
..
</html>
渲染功能如下:
...
render: function() {
return(
<div className="DeadSimpleComponent">
<div className="DeadSimpleComponent__time">10:23:12</div >
<div className="DeadSimpleComponent__date">MONDAY, 2 MARCH 2015</div>
</div>
)
}
....
下面我呼叫渲染:
ReactDOM.render(<DeadSimpleComponent/>, document.getElementById('component-placeholder'));
生成的 HTML 如下:
<html>
..
<div id="component-placeholder">
<div class="DeadSimpleComponent">
<div class="DeadSimpleComponent__time">10:23:12</div>
<div class="DeadSimpleComponent__date">MONDAY, 2 MARCH 2015</div>
</div>
</div>
..
</html>
问题是,我不是很高兴,因为 React 强迫我把所有东西都包装在一个 div“ DeadSimpleComponent”中。如果没有显式的 DOM 操作,那么最好和最简单的解决方案是什么?
更新7/28/2017: React 的维护者在 React 16 Beta 1中增加了这种可能性
从 反应16.2开始,你可以这样做:
render() {
return (
<>
<ChildA />
<ChildB />
<ChildC />
</>
);
}