Size: a a a

React — русскоговорящее сообщество

2021 January 31

D

Drivel in React — русскоговорящее сообщество
Victor Rusakovich
какие данные? как догадаться о чем вопрос?
Я диспатчу экшн на получение данных профиля, но насколько я понял, useEffect вызывается после первого рендера компонента, а пока что данных нет, оно выбивает ошибку, на второй рендер данные подгружаются, но из-за ошибки уже не перерисовывается
источник

D

Drivel in React — русскоговорящее сообщество
Олег
username не должен быть undefined
username точно не undefined
источник

EM

Eugene Maltsev in React — русскоговорящее сообщество
Drivel
username точно не undefined
profileData undefined)
источник

О

Олег in React — русскоговорящее сообщество
Drivel
Я диспатчу экшн на получение данных профиля, но насколько я понял, useEffect вызывается после первого рендера компонента, а пока что данных нет, оно выбивает ошибку, на второй рендер данные подгружаются, но из-за ошибки уже не перерисовывается
useeffect вызывается при первом рендере
источник

О

Олег in React — русскоговорящее сообщество
Drivel
Я диспатчу экшн на получение данных профиля, но насколько я понял, useEffect вызывается после первого рендера компонента, а пока что данных нет, оно выбивает ошибку, на второй рендер данные подгружаются, но из-за ошибки уже не перерисовывается
сделай в jsx условие { profileData && <div> ... </div>}
источник

Е

Екатерина in React — русскоговорящее сообщество
подскажите, а как можно прописать switch внутри jsx?
а то я только через ? умею вставлять разные варианты блоков, а это не всегда удобно
источник

D

Drivel in React — русскоговорящее сообщество
Олег
сделай в jsx условие { profileData && <div> ... </div>}
так работает, но неужели теперь, если мне нужны данные из стора, нужно их отрисовывать по условию. Мне казалось, что в идеале я просто должен получать данные при первом рендере и сразу их отрисовывать, а получается, что я должен ловить отсутствие данных на первом рендере, потом useEffect их загружает и они отрисовываются на втором рендере.
источник

DD

Dmitry Dugin in React — русскоговорящее сообщество
смотрел видос "Введение в React" там автор такую схему рисовал. я думал что VDOM только один. или это автор видео некорректно объяснял?
источник

DD

Dmitry Dugin in React — русскоговорящее сообщество
источник

О

Олег in React — русскоговорящее сообщество
Drivel
так работает, но неужели теперь, если мне нужны данные из стора, нужно их отрисовывать по условию. Мне казалось, что в идеале я просто должен получать данные при первом рендере и сразу их отрисовывать, а получается, что я должен ловить отсутствие данных на первом рендере, потом useEffect их загружает и они отрисовываются на втором рендере.
а у тебя initialstate задан для profileData.username?
источник

Т

Тимофей 🛴 in React — русскоговорящее сообщество
Dmitry Dugin
смотрел видос "Введение в React" там автор такую схему рисовал. я думал что VDOM только один. или это автор видео некорректно объяснял?
Vdom это просто js object который получается после рендера
источник

О

Олег in React — русскоговорящее сообщество
Dmitry Dugin
есть снэпшоты vdom. меняется стейт , происходит ререндер виртуального дерева и строятся комопненты по новой
источник
2021 February 01

DD

Dmitry Dugin in React — русскоговорящее сообщество
Drivel
так работает, но неужели теперь, если мне нужны данные из стора, нужно их отрисовывать по условию. Мне казалось, что в идеале я просто должен получать данные при первом рендере и сразу их отрисовывать, а получается, что я должен ловить отсутствие данных на первом рендере, потом useEffect их загружает и они отрисовываются на втором рендере.
меня тоже удивило почему именно так работает. потом я понял почему. но сейчас я не помню что именно я тогда понял.
источник

Т

Тимофей 🛴 in React — русскоговорящее сообщество
Dmitry Dugin
На картинке имеется ввиду что сравнивается vdom с предыдущим и уже разница применяется на реальный dom
источник

DD

Dmitry Dugin in React — русскоговорящее сообщество
Тимофей 🛴
На картинке имеется ввиду что сравнивается vdom с предыдущим и уже разница применяется на реальный dom
vdom с предыдущим. то есть чтобы сравнить строится ещё один js объект виртуального дома и он сравнивает со старым объектом?
источник

D

Drivel in React — русскоговорящее сообщество
Олег
а у тебя initialstate задан для profileData.username?
попробовал задать в initialState, но все равно не работает, такое ощущение, что это какой-то баг
источник

DD

Dmitry Dugin in React — русскоговорящее сообщество
Олег
есть снэпшоты vdom. меняется стейт , происходит ререндер виртуального дерева и строятся комопненты по новой
непонятно. слишком абстрактно
источник

VR

Victor Rusakovich in React — русскоговорящее сообщество
Dmitry Dugin
меня тоже удивило почему именно так работает. потом я понял почему. но сейчас я не помню что именно я тогда понял.
вероятно, данные в стор кладутся чуть позже
источник

DD

Dmitry Dugin in React — русскоговорящее сообщество
Тимофей 🛴
Vdom это просто js object который получается после рендера
а что он в себе содержит? кучу объектов для каждого компонента
источник

VR

Victor Rusakovich in React — русскоговорящее сообщество
Dmitry Dugin
а что он в себе содержит? кучу объектов для каждого компонента
источник