Heute habe ich angefangen, ReactJS zu lernen und bin nach einer Stunde mit dem Problem konfrontiert. Ich möchte eine Komponente einfügen, die zwei Zeilen in einem Div auf der Seite enthält. Ein vereinfachtes Beispiel dafür, was ich unten mache.
Ich habe ein HTML:
<html>
..
<div id="component-placeholder"></div>
..
</html>
Renderfunktion wie folgt:
...
render: function() {
return(
<div className="DeadSimpleComponent">
<div className="DeadSimpleComponent__time">10:23:12</div >
<div className="DeadSimpleComponent__date">MONDAY, 2 MARCH 2015</div>
</div>
)
}
....
Und unten rufe ich render auf:
ReactDOM.render(<DeadSimpleComponent/>, document.getElementById('component-placeholder'));
Generiertes HTML sieht folgendermaßen aus:
<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>
Das Problem, dass ich nicht sehr glücklich bin, dass React mich zwingt, alles in eine div "DeadSimpleComponent" zu packen. Was ist die beste und einfachste Problemumgehung ohne explizite DOM-Manipulationen?
UPDATE 28.07.2017: Die Verantwortlichen von React haben diese Möglichkeit in React 16 Beta 1 hinzugefügt
Seit React 16.2 können Sie Folgendes tun:
render() {
return (
<>
<ChildA />
<ChildB />
<ChildC />
</>
);
}
