которого зависит от передаваемого пропса (пусть будет isShow, как то часто бывает в модалках, например).
<App><Modal isShow /></App>
Есть два мнения, нужно оборачивать условием обращение к компоненту, либо не нужно.
<App>{isShow && <Modal isShow />}</App>
Кто-то утверждает, что нужно, чтобы интерпретатор даже не пытался тратить время на лишние в тч асинхронные колы, и в сумме по всему приложению таких обращений может набегать вполне себе ощутимо, а кто-то говорит, что времени на это тратиться очень мало и этим можно пренебречь в пользу, например, хорошей читаемости кода.
Опрос – нужно или нет оборачивать условно создаваемые компоненты?
Считайте что анимации нет.
Я понимаю, что частные случаи могут быть везде. Но тут скорее вопрос подхода. Поэтому предлагаю абстрагироваться от нюансов.
Нет никаких двух мнений, это просто разные условно отображаемые компоненты {error && <Error … />} vs <Popup open={open}>…</Popup> Компоненту либо нужен транзишн, либо нет
вот да
Я предложил считать выше что анимации нет)
если не пропсом то не будет лишних компонентов в дереве когда они не нужны, если пропсом, то быстрее может появляться что
тут правильно написано
Если берем кейс тупо показать/скрыть по условию, то, конечно, {foo && <Bar />}, хз че тут думать 😅
раз уж на то пошло считаю, что чем меньше логики в jsx тем лучше, пишу типа const renderBar = () => { if (!foo) { return null; } return <Bar /> } {renderBar()} (для таких простых случаев конечно можно оставить в jsx, но обычно там пропсы передаются и т.д.)
а если потом окажется, что надо добавить анимацию на скрытие?)
Компромисс че
Всегда можно поверх, кста
Почти*
Обсуждают сегодня