
Denis
27.10.2017
19:46:51
т.е я конечно могу сдлать импорт и просто вызвать нужный экшен. Но это фигово

Andrew
27.10.2017
19:47:16
Редакс санк

Denis
27.10.2017
19:47:18
Наверняка есть решения

Andrew
27.10.2017
19:48:20
Можешь делать диспатч в экшенах

Google

Denis
27.10.2017
19:48:45
Редакс санк
я использовал для асинхронки, но я завтр конечно покапаю еще в этом направлении
А есть чет такие как redux api middleware только что б ешкены дергало?

Andrew
27.10.2017
19:51:03
Можешь вообще просто сделать асинхронный метод в реакне
И писать там .then(this.props.someAction())
Но так никто не делает

Denis
27.10.2017
19:53:13
С промисами понятно. Был сегодня просто вопрос, как сделать акшен в редюсре.. Я немного побелел от вопроса. Сейчас вот думаю как

kana
27.10.2017
19:53:27
Лол, никак

Denis
27.10.2017
19:53:37
редюсеры то для другого и там точно это делать низя
во

kana
27.10.2017
19:53:46
Редьюсер обновляет данные и только
Так тебе же сказали, занки

Denis
27.10.2017
19:54:31

Google

Denis
27.10.2017
19:54:57

Andrew
27.10.2017
19:55:46
Странная у тебя таска в общем

kana
27.10.2017
19:55:55
const doAB = () => dispatch => {
dispatch(doA());
dispatch(doB());
};
dispatch(doAB());
Зачем куда-то копать, это же самое простое и очевидное использование занклв

Denis
27.10.2017
19:56:01

kana
27.10.2017
19:56:49
А вообще еще лучше подписываться на поток экшонов какими сагами или обсерв

Andrew
27.10.2017
19:57:25
Ну редакс санки и все, а так да только редакс сага или обсервер
И то они просто получают массив экшенов, и отдают новый массив с экшнами

Denis
27.10.2017
19:58:09

kana
27.10.2017
19:59:01
Не понял
const doAB = () => async dispatch => {
await dispatch(doA());
await dispatch(doB());
};
dispatch(doAB());

Andrew
27.10.2017
19:59:59
Ну они будут одновременно выполнены
Как бы

Cenator
27.10.2017
20:00:52

kana
27.10.2017
20:01:46
Чтобы одновременно, то
await Promise.all([
dispatch(doA()),
dispatch(doB())
]);

Denis
27.10.2017
20:01:47

Andrew
27.10.2017
20:01:55
Точно будет ждать результата и только потом второй уйдёт

Cenator
27.10.2017
20:02:10

Denis
27.10.2017
20:02:12

Andrew
27.10.2017
20:03:25
Надо уже наконец почитать про async await синтаксис

Denis
27.10.2017
20:03:38
Я когда вопрос услышал про запуск экшена в редюсере, несмотря на абсурдность вопроса, я предствил что это должно выглядеть как redux-api-midlware

kana
27.10.2017
20:04:07
Ну занк - это и есть мидлвара

Google

Andrew
27.10.2017
20:04:46
Есть такая штука https://habrahabr.ru/post/310854/
Может это имели ввиду

Denis
27.10.2017
20:05:29
Лан, спасиб подсказали тут.
Еще подскажие норм open source на react-redux-router?

Andrew
27.10.2017
20:05:58
Так он вроде и есть
React router redux
Там браузер хистори со стором синхронизированная

Дмитрий
27.10.2017
20:07:18
По react-router-redux аще нет ничего нигде, примеры уже устаревшие

Andrew
27.10.2017
20:08:07
С 4 rr не работает?

Дмитрий
27.10.2017
20:09:23
Работает, то что в данный момент разрабатывается, в этом и проблема

Denis
27.10.2017
20:09:42
Так он вроде и есть
не не не, я имел ввиду не либу с роутом, а именно интересный опен сорс проект, что б можно было чему-то научиться у авторов

Andrew
27.10.2017
20:10:51
Блин что ж они там в 4 версии так все закрутили, все постоянно пишут что что-то не работает

Denis
27.10.2017
20:11:25

Andrew
27.10.2017
20:12:11
Хорошо что пока проекты на next и не нужно с ним работать

Дмитрий
27.10.2017
20:23:57

Andrew
27.10.2017
20:24:42
Завтра почитаю, аж интересно стало

Dmitry
27.10.2017
20:31:41
Мне бы хотелось что бы было что-то типа саг, но с более простым апи
и на промисах \)

Дмитрий
27.10.2017
20:37:17
Фьючерсы
Даром что они даже имеют бонусом поддержку синтаксиса а ля саги

Google

Dmitry
27.10.2017
20:39:00
но фьючерсы это ж по сути обзерваблы будут

Дмитрий
27.10.2017
20:39:01
Но пока тсс флоу не особо понимают что при этом происходит, поэтому идеями с генераторами не пользуюсь

Dmitry
27.10.2017
20:40:25
Ну я про, что реализованная концепция выйдет похожа на редукс обзервабл или что-то в этом духе
только это будет как свой костыль без документации и тестов
А вот эти саги и прочие надстройки, они менеджат если мы отменяем екшин в котором выполняется другйо екшин

Дмитрий
27.10.2017
20:42:02
Лол

Dmitry
27.10.2017
20:42:09
и выходит его надо отменить

Дмитрий
27.10.2017
20:42:11
Посмотри api fluture

Dmitry
27.10.2017
20:42:29

Дмитрий
27.10.2017
20:42:30
Там хоть вприсядку хуками обмазывайся
Не, в принципе дело твоё что я тут настаивать буду)

Юра
27.10.2017
20:43:05
Господа. Всем привет, это снова я.
В общем, такой вопрос: есть список элементов, который мы выводим. Все они кликабельные.
Как сделать так, чтобы в обработчике клика был айдишник элемента, но не используя замыкания?

Dmitry
27.10.2017
20:44:56

Дмитрий
27.10.2017
20:45:17
Ёбана ??

Dmitry
27.10.2017
20:45:44
Мы думали ты свой, а ты из этих …

Юра
27.10.2017
20:46:19

Dmitry
27.10.2017
20:46:32
из админов

Дмитрий
27.10.2017
20:46:34

Google

Дмитрий
27.10.2017
20:46:49
Передавая просто саму функцию
Но чисто технически мы меняем замыкание на компонент с биндом метода

Юра
27.10.2017
20:47:42

Дмитрий
27.10.2017
20:48:14
Я не говорил что это оптимальный вариант)

Юра
27.10.2017
20:48:24

Dmitry
27.10.2017
20:48:27

Дмитрий
27.10.2017
20:49:12
Просто все в разное время понты колотят ?

Dmitry
27.10.2017
20:49:18
хз как можно иначе

Andrew
27.10.2017
20:49:22
когда мапишь пишешь onClick={(id) => {someHandler(id)}} ? или я не так понял ?

Aleksey
27.10.2017
20:49:47
а почему без замыкания?

Cenator
27.10.2017
20:50:10
Туда Event передается

Юра
27.10.2017
20:50:32
Ну, спасибо. Прям отлегло.
Давал сегодня совет, как поступить в данной ситуации, и не давала покоя мысль, что это не слишком изящное решение.

Дмитрий
27.10.2017
20:50:54
Второй - что так делать нельзя

Aleksey
27.10.2017
20:51:02
handleClick = (id) => () => { this.props.onClick(id); }. Потом в цикле твоем: onClick={this.handleClick(item.id)}

Dmitry
27.10.2017
20:51:23
и каждый раз новая функция ?
не, спасибо

Дмитрий
27.10.2017
20:51:30

Cenator
27.10.2017
20:51:30