
andretshurotshka?❄️кде
02.04.2018
18:58:27
это createRef

Artem
02.04.2018
18:58:43
а какие преимущества дает redux saga? к примеру могу юзать thunk с async/wait

Andrew
02.04.2018
18:58:58

Google

Andrew
02.04.2018
18:59:00
Забей

andretshurotshka?❄️кде
02.04.2018
18:59:04
подписка на экшены

Valeriy
02.04.2018
18:59:12
если надо много рефов там наверное лучше уникальный класс сгенерить через uuidV4 и собрать их в кучу в componentDidMount через document.querySelector :))

Andrew
02.04.2018
18:59:13
Хереня

Andrey
02.04.2018
18:59:27

Andrew
02.04.2018
18:59:30

Valeriy
02.04.2018
18:59:33
=)))

Andrew
02.04.2018
18:59:34
Ору

Max
02.04.2018
18:59:38
охуительно

Artem
02.04.2018
19:00:29
Никаких
уже не первый раз слышу о ней, хочу понять почему saga а не asyc/await)

Andrew
02.04.2018
19:00:54

Anton
02.04.2018
19:00:56

Andrew
02.04.2018
19:01:04
Почитай про генераторы и поймешь

Google

Artem
02.04.2018
19:02:00

Valeriy
02.04.2018
19:02:05

Artem
02.04.2018
19:02:16

Valeriy
02.04.2018
19:02:26
ну грубо говоря совсем если :))

Andrew
02.04.2018
19:02:37
Ну так там есть набор эффектов
И можно более адвенс штуки делать с асинхронностью

Artem
02.04.2018
19:03:07
то есть это некий отдельный слой сайд эффектов, который диспатчит redux way тупо объекты?)

Andrew
02.04.2018
19:03:14
Например вотчить
Или тротлить
Так вот там это в сагах делается

Artem
02.04.2018
19:04:30
стоп погоди ка, так я в thunk могу тоже диспатчить объекты))))

Andrew
02.04.2018
19:04:37
Но я понял что лучше для этого отдельные классы + в санках дергать их методы

Valeriy
02.04.2018
19:06:38

Andrew
02.04.2018
19:07:38
Тебе обычная функция заблокирует все

Valeriy
02.04.2018
19:08:13

Andrew
02.04.2018
19:08:14
А генератор нет
А оно тебе надо?

Google

Valeriy
02.04.2018
19:08:52
собственно этого уже достаточно чтобы послать куда подальне thunk и начать юзать redux-saga

Cenator
02.04.2018
19:09:03

Andrew
02.04.2018
19:09:14

?
02.04.2018
19:09:17

Max
02.04.2018
19:09:25
MST

Artem
02.04.2018
19:09:29

Oleg
02.04.2018
19:11:15

Andrew
02.04.2018
19:11:22
Вообще redux не нужен

Oleg
02.04.2018
19:11:29
Ну и всякие deffered

Andrew
02.04.2018
19:11:46

Oleg
02.04.2018
19:11:54
Да redux няшка же, не понимаю этих претензий к бойлерплейту

Andrew
02.04.2018
19:12:03
А на генераторах можно плоский код писать

Oleg
02.04.2018
19:12:07

Andrew
02.04.2018
19:12:36
Та потому что на каждую херню писать экшон

Oleg
02.04.2018
19:12:42
Но вообще, мне наверное кейсы не попадались, когда прямо в отдельном потоке экшены слушать
Но миддлвары такие покрывают

Andrew
02.04.2018
19:13:05
+
Я для ws свою хуйню написал и все

Valeriy
02.04.2018
19:13:31

Oleg
02.04.2018
19:13:48

Google

Valeriy
02.04.2018
19:13:52

Oleg
02.04.2018
19:13:57
Если прямо последовательность

Valeriy
02.04.2018
19:13:57
как раз специально для всего этого

Oleg
02.04.2018
19:14:15

Valeriy
02.04.2018
19:14:38
ты вызвал экшин А, в нем выполнил некий запрос и должен ждать пока выполнится некий экшин Б вызванный из компонента в этов время

Andrew
02.04.2018
19:15:03

Valeriy
02.04.2018
19:15:07
внутри танка А ты не знаешь о том что в это время вызываются другие экшины

Andrew
02.04.2018
19:15:09
Как санк работает
Все что он делает это смотрит если экшон не вернул объект, а вернул функцию

Admin
ERROR: S client not available

Artem
02.04.2018
19:15:51

Andrew
02.04.2018
19:15:52
То передай туда диспатч и гет стейт
Все

Valeriy
02.04.2018
19:16:06
омг
мы похоже говорим на разных уровнях совершенно

Andrew
02.04.2018
19:16:50
И диспатч сколько угодно санков внутри других санков

Valeriy
02.04.2018
19:17:03
да не надо мне их оттуда диспатчить
я хочу знать выполнился ли другой диспатч запущенный из других санок

Oleg
02.04.2018
19:17:43
В общем если у кого-то саги получается так же красиво делать, как у них в репе example app, это огонь

Google

Artem
02.04.2018
19:18:14
- сага1
- сага2
- сага 3 ждем и проверя на какой стадии сага 1 и сага2
такое дает проворачивать, да?

Oleg
02.04.2018
19:18:29
Мне thunk + миддлвары нагляднее кажутся

Andrew
02.04.2018
19:20:59

Valeriy
02.04.2018
19:21:46
actionA = payload => dispatch => {
dispatch(payload)
}
actionB = payload => dispatch => {
dispatch(payload)
// тут я хочу ждать пока не поймаю выполнение экшина actionA
}
где то тут в компоннетах вызываются оба этих экшина сверху
вот и как это без саги оформить простыми саночками?
экшин мне это как то куда скажет?

Дмитрий
02.04.2018
19:22:58
MST
Как сможет сформулировать понятие типа по предикату, так можно будет подумать))

Andrew
02.04.2018
19:23:00

Valeriy
02.04.2018
19:23:32

Andrew
02.04.2018
19:23:41
Или просто засунь второй санк в then первого

Valeriy
02.04.2018
19:24:04
export const getHostList = (force = false) => (dispatch, getState, { api }) => {
вот у меня thunk экшин

Andrew
02.04.2018
19:24:25
Ну допустим

Valeriy
02.04.2018
19:24:30
мне в смысле по таймеру дергать getState внутри?

Andrew
02.04.2018
19:24:50
Почему по таймеру ?

Valeriy
02.04.2018
19:24:59
ну ок, а как?

Oleg
02.04.2018
19:25:05
Ну санки норм как селекторы комбинировать

Andrew
02.04.2018
19:25:30
Тебе надо вернутся в выполнение ?
Пока первый не сработает
Возвращайся во второй ?