今日、私はReactJSの学習を開始し、1時間後に問題に直面しました。ページのdiv内に2つの行を持つコンポーネントを挿入したいと思います。
私は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がすべてを "DeadSimpleComponent"のdivでラップすることを強いられているので、私はあまり満足していません。明示的なDOM操作なしで、そのための最善かつ簡単な回避策は何ですか?
更新7/28/2017:ReactのメンテナーがReact 16 Beta 1でその可能性を追加しました
React 16.2以降、これを行うことができます:
render() {
return (
<>
<ChildA />
<ChildB />
<ChildC />
</>
);
}