Можете ли вы использовать реквизит на React.Fragment?
Я знаю, что React Fragment можно использовать для группировки дочерних компонентов следующим образом:
render() {
return (
<React.Fragment>
<Foo />
<Bar />
<Baz />
</React.Fragment>
);
}
Но можно ли добавить к нему реквизит? Допустим, вы хотите использовать оператор распространения:
<React.Fragment {...otherProps}>
...
</React.Fragment>
2 ответа
Решение
Нет, не можешь. Согласно документации React по фрагментам:
key - единственный атрибут, который можно передать фрагменту. В будущем мы можем добавить поддержку дополнительных атрибутов, таких как обработчики событий.
Поэтому, если вы хотите добавить свойства к компоненту оболочки, переключитесь на старый добрый div.
Вовсе нет, потому что если вы думаете передать такой реквизит -
<React.Fragment {...otherProps}>
....
<React.Fragment />
это означает
< {...otherProps}>
</>
Что неправильно, что Reactjs не рекомендует так использовать.