Size: a a a

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

2020 October 10

k👾

karrtopelka 👾 in React — русскоговорящее сообщество
Rros
Для чего ты используешь useEffect?
насколько я знаю, он запускается сразу когда я вызову функцию, которой он принадлежит
источник

R

Rros in React — русскоговорящее сообщество
karrtopelka 👾
насколько я знаю, он запускается сразу когда я вызову функцию, которой он принадлежит
The Effect Hook lets you perform side effects in function components
источник

R

Rros in React — русскоговорящее сообщество
Ты можешь использовать useEffect в компоненте, если тебе надо что-то загрузить
источник

k👾

karrtopelka 👾 in React — русскоговорящее сообщество
Rros
The Effect Hook lets you perform side effects in function components
так по сути оно мне и загружает данные с бд
источник

R

Rros in React — русскоговорящее сообщество
Только у тебя рендера не хватает
источник

R

Rros in React — русскоговорящее сообщество
Напиши компонент отдельно, напиши нужную функцию в отдельном файле, если хочешь и вызове ее в компоненте в useEffect
источник

k👾

karrtopelka 👾 in React — русскоговорящее сообщество
Rros
Ты можешь использовать useEffect в компоненте, если тебе надо что-то загрузить
а, я хочу с самого начала взять данные, которые мне надо с бд, и просто хранить его в стейте одном, а дальше уже использовать в разных компонентах (в разных файлах). Другими словами, хочу сделать локальную маленькую бд, основаную на активной сессии
источник

R

Rros in React — русскоговорящее сообщество
Rros
Напиши компонент отдельно, напиши нужную функцию в отдельном файле, если хочешь и вызове ее в компоненте в useEffect
Вот так и сделай. Не совсем пока понятно, что останавливает тебя
источник

k👾

karrtopelka 👾 in React — русскоговорящее сообщество
Rros
Напиши компонент отдельно, напиши нужную функцию в отдельном файле, если хочешь и вызове ее в компоненте в useEffect
компонент в принципе у меня есть, а вот как писать функцию, чистую так сказать, чесно говоря не знаю, сразу говорю что гуглил, но не нашел...
источник

R

Rros in React — русскоговорящее сообщество
karrtopelka 👾
компонент в принципе у меня есть, а вот как писать функцию, чистую так сказать, чесно говоря не знаю, сразу говорю что гуглил, но не нашел...
Мне кажется, более опытные люди здесь скажут сначала изучить основы JS
источник

И

Иван in React — русскоговорящее сообщество
Aleksandr Potkin
этот контейнер же не играет роли никакой в представлении...а если приложение это только форма и имя аккаунта и что тогда? все равно подключать thunkи и ему подобные?
При условии, что задача заключается только в форме, то для такой формы нецелесообразно подключать даже реакт.

Достаточно создать входную точку с html и подключать туда модули. Модуля получится два — транспорт и логика формы. Какой диспатч, какой компонент.

А если приложение собирается расти (так бывает почти всегда), то нужно планировать наперёд.
источник

R

Rros in React — русскоговорящее сообщество
karrtopelka 👾
компонент в принципе у меня есть, а вот как писать функцию, чистую так сказать, чесно говоря не знаю, сразу говорю что гуглил, но не нашел...
const Comp = () => {
 const fetchSmth = () => {
...
}
 useEffect(() => {
fetchSmth()
})
return ()
}
источник

И

Иван in React — русскоговорящее сообщество
Aleksandr Potkin
этот контейнер же не играет роли никакой в представлении...а если приложение это только форма и имя аккаунта и что тогда? все равно подключать thunkи и ему подобные?
Собрать это всё можно парселем без конфигурации. Захотел — тс подключил сразу.  И погнал. С тс’ом будет проще потом подключать реакт.
источник

AP

Aleksandr Potkin in React — русскоговорящее сообщество
Иван
При условии, что задача заключается только в форме, то для такой формы нецелесообразно подключать даже реакт.

Достаточно создать входную точку с html и подключать туда модули. Модуля получится два — транспорт и логика формы. Какой диспатч, какой компонент.

А если приложение собирается расти (так бывает почти всегда), то нужно планировать наперёд.
Спасибо, разобрался. Вопрос был в образовательных целях, хотел узнать что другие думают по этому поводу
источник

🅅🄺

🅅aleriy 🄺obzar in React — русскоговорящее сообщество
Aleksandr Potkin
Ребят, давайте обсудим, такая ситуация: Компонент форма логин и пароль отправляет запрос серверу на авторизацию, при успехе <Suspense><lazy><Suspence> подгружает основной контент в котором есть шапка с именем аккаунта...имя аккаунта фетчится дополнительным запросом когда уже пользователь авторизован. Если обновить страницу, то через сессию авторизация не спадает и показывается сразу <Suspence> контент.
Вопрос: где лучше фетчить имя аккаунта? перед отрисовкой <Suspence> пробрасывая ему через пропсы имя аккаунат или внутри <Suspence> в useEffect() вызывая при этом два раза ререндер?
лично я всегда делаю веб приложения так, чтобы сначала все работало из консоли браузера без отображения каких либо компонентов через react, vue, svelte и т.д.
потом уже, когда бизнес логика заработала, начинаю прикручивать представление через тот или иной фреймворк/либу, которая позволяет отрендерить все это
источник

🅅🄺

🅅aleriy 🄺obzar in React — русскоговорящее сообщество
т.е. делаю обертку над api для нужных фетчингов, вебсокетов, server sent events, проверяю как работает авторизация из консоли браузера, логины, логауты, смена пароля и т.д., потом уже перехожу к формам и рендерингу
источник

🅅🄺

🅅aleriy 🄺obzar in React — русскоговорящее сообщество
такое разделение сниает кучу головной боли
источник

AP

Aleksandr Potkin in React — русскоговорящее сообщество
🅅aleriy 🄺obzar
лично я всегда делаю веб приложения так, чтобы сначала все работало из консоли браузера без отображения каких либо компонентов через react, vue, svelte и т.д.
потом уже, когда бизнес логика заработала, начинаю прикручивать представление через тот или иной фреймворк/либу, которая позволяет отрендерить все это
tdd разработка типа
источник

🅅🄺

🅅aleriy 🄺obzar in React — русскоговорящее сообщество
Aleksandr Potkin
tdd разработка типа
я бы не сказал, что это tdd или bdd, но похоже в принципе если тесты сначала писать, чего я делать не люблю
тут я тесты заменяю ручной работой с консолью
источник

🅅🄺

🅅aleriy 🄺obzar in React — русскоговорящее сообщество
но да само собой это похоже, только без явной автоматизации
источник