У 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>
);
}
Так, нам потрібен контейнер-діль, але це не так вже й велика угода.
У React 16.2 ми можемо це зробити, щоб уникнути навколишнього поділу контейнера:
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>
це не завжди те, що ти хочеш.