Size: a a a

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

2021 April 05

AS

Alexandr Sachishin in React — русскоговорящее сообщество
isFetching && <Preloader/>
!isFetching && <otherComponent/>
источник

RK

Ruslan Kahramanov in React — русскоговорящее сообщество
Ruslan Kahramanov
запросы начинаются в первом useEffect и заканчиваются во втором, поэтому setFetching там располагается
источник

AS

Alexandr Sachishin in React — русскоговорящее сообщество
Vladimir Klimov
Зачем разделять компоненты так?
У меня есть компонент A
Мне в нем нужны данные из Redux
Зачем мне какой-то там контейнерный компонент? Я просто получаю данные из редакса там, где они мне нужны
т.е. вместо контейнеров получать данные с хуков?
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Alexandr Sachishin
т.е. вместо контейнеров получать данные с хуков?
Не из хуков, а с помощью хуков
можно с помощью хуков, можно тем же connect, это не суть вопроса
Важно то, что не стоит разделять компоненты на "контейнерные" и "презентационные"
источник

RK

Ruslan Kahramanov in React — русскоговорящее сообщество
Alexandr Sachishin
т.е. вместо контейнеров получать данные с хуков?
Контейнерные компоненты вымерли, они не нужны
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Ruslan Kahramanov
запросы начинаются в первом useEffect и заканчиваются во втором, поэтому setFetching там располагается
Как это они "заканчиваются" во втором?
И зачем у вас везде await dispatch?
источник

AS

Alexandr Sachishin in React — русскоговорящее сообщество
Ruslan Kahramanov
react не выдает предупреждения на async функции прямо внутри хука?
источник

AS

Alexandr Sachishin in React — русскоговорящее сообщество
Vladimir Klimov
Не из хуков, а с помощью хуков
можно с помощью хуков, можно тем же connect, это не суть вопроса
Важно то, что не стоит разделять компоненты на "контейнерные" и "презентационные"
а через коннект каким образом? не могу найти подходящую информацию
источник

RK

Ruslan Kahramanov in React — русскоговорящее сообщество
Vladimir Klimov
Как это они "заканчиваются" во втором?
И зачем у вас везде await dispatch?
Я жду пока закончится запрос на сервер, чтобы потом вызвать нужную функцию
источник

VC

Valera CSS_Junior in React — русскоговорящее сообщество
а как называется в JavaScript когда мы такое делаем через три точки? return {
       ...state, contacts:
       [...state.contacts, action.payload]
   }
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Alexandr Sachishin
а через коннект каким образом? не могу найти подходящую информацию
Вы никогда не вытаскивали данные из редакса?)
источник

AS

Alexandr Sachishin in React — русскоговорящее сообщество
Vladimir Klimov
Вы никогда не вытаскивали данные из редакса?)
это мой первый проект, нет конечно)
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Ruslan Kahramanov
Я жду пока закончится запрос на сервер, чтобы потом вызвать нужную функцию
Это надо делать внутри thunk, а не в компоненте
источник

HN

Ho Nguyen in React — русскоговорящее сообщество
Valera CSS_Junior
а как называется в JavaScript когда мы такое делаем через три точки? return {
       ...state, contacts:
       [...state.contacts, action.payload]
   }
спред оператор
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Alexandr Sachishin
это мой первый проект, нет конечно)
https://redux.js.org/
Вам сюда
источник

VC

Valera CSS_Junior in React — русскоговорящее сообщество
Ho Nguyen
спред оператор
а у самого процесса нет названия? мерж, слияние объектов может. нет?
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
Valera CSS_Junior
а как называется в JavaScript когда мы такое делаем через три точки? return {
       ...state, contacts:
       [...state.contacts, action.payload]
   }
spread
источник

RK

Ruslan Kahramanov in React — русскоговорящее сообщество
Vladimir Klimov
Это надо делать внутри thunk, а не в компоненте
Просто эта thunk используется в других местах, я не знал что в useEffect нельзя асинхронные функции использовать. Спасибо за помощь
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Ruslan Kahramanov
Просто эта thunk используется в других местах, я не знал что в useEffect нельзя асинхронные функции использовать. Спасибо за помощь
Это замечание резонное, но причина вашей проблемы, скорее всего не в этом
источник

VC

Valera CSS_Junior in React — русскоговорящее сообщество
понятно. просто rest operator тоже три точки. но там другое
источник