React 16.2では、サポートの改善Fragments
が追加されました。詳細については、Reactのブログ投稿(こちら)を参照してください。
私たちは皆、次のコードに精通しています。
render() {
return (
// Extraneous div element :(
<div>
Some text.
<h2>A heading</h2>
More text.
<h2>Another heading</h2>
Even more text.
</div>
);
}
はい、コンテナーdivが必要ですが、それほど大きな問題ではありません。
React 16.2では、周囲のコンテナーdivを回避するためにこれを行うことができます。
render() {
return (
<Fragment>
Some text.
<h2>A heading</h2>
More text.
<h2>Another heading</h2>
Even more text.
</Fragment>
);
}
どちらの場合でも、内部要素を囲むコンテナー要素が必要です。
私の質問は、なぜ使用するFragment
ことが望ましいですか?パフォーマンスに役立ちますか?もしそうなら、なぜですか?いくつかの洞察力を愛しています。
div
は、常にラッパー要素が必要なわけではないことです。ラッパー要素には意味があり、通常、その意味を削除するには追加のスタイルが必要です。<Fragment>
レンダリングされない単なる構文上の砂糖です。ラッパーの作成が非常に困難な状況があります。たとえば、SVGで<div>
使用できず、<group>
必ずしも希望どおりではない場合があります。