#javascript #reactjs #react-native #ecmascript-6 #ecmascript-5
#javascript #reactjs #реагировать — родной #ecmascript-6 #ecmascript-5
Вопрос:
У меня есть ReactComponentParent, который получает 15 различных реквизитов (объекты, числа, логические значения, массивы и т. Д.)
Внутри ReactComponentParent у меня есть ReactComponentChild, для которого требуется 6 реквизитов, но вместо этого я использую {…props}
<ReactComponentChild {...props} />
Есть ли какой-либо побочный эффект (с точки зрения производительности) с использованием {…props} вместо просто необходимого реквизита?
Реагирует ли каким-то образом, может быть, через propsTypes, обрабатывая это поведение?
Должен ли я просто отправлять только то, что нужно компоненту?
Комментарии:
1. Обеспечивает отсутствие распространения для любого атрибута JSX. Это повышает читаемость кода за счет более четкого указания того, какие реквизиты получает компонент. Это также хорошо для удобства обслуживания, избегая непреднамеренной передачи дополнительных реквизитов и позволяя react выдавать предупреждения, когда недопустимые HTML-реквизиты передаются в HTML-элементы. ESLint-плагин-реагировать
2. @ayxos передача ненужных реквизитов может привести к ненужному повторному рендерингу …
Ответ №1:
Таким образом, вы отправляете все реквизиты, поступающие от родительского компонента к дочернему, например
<ReactComponentChild {...props} />
Хороший подход — просто отправить необходимые реквизиты дочернему элементу