Разрешено ли в React использовать элементы props.children несколько раз? - PullRequest
0 голосов
/ 31 января 2020

Например, если потомок всегда вверху <h3>:

<h3> ... </h3>
<div>other content</div>

В родительском компоненте нормально использовать

return (
  { props.children } 
    ... other content
  { props.children[0] } 
);

, который отображать props.children[0] два раза или по любой причине показывать props.children дважды. Это допустимо? Кажется, DOM дважды будет указывать на props.children[0], но в инструменте разработчика Chrome я проверил, что два элемента DOM <h3> ... </h3> различны.

1 Ответ

0 голосов
/ 31 января 2020

Конечно. props - это просто объект , поэтому вы можете использовать его как обычный объект (но, как вы уже знаете, не изменяйте его .).

Также, даже если props.children[0] появляется дважды в render(), они будут по-разному преобразованы в DOM. Потому что, когда JSX преобразуется в Fiber, каждый JSX будет преобразован независимо (и будет преобразован в DOM). Так что два DOM разные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...