@react_js

Страница 2426 из 5115
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
const doAB = () => dispatch => { dispatch(doA()); dispatch(doB()); }; dispatch(doAB()); Зачем куда-то копать, это же самое простое и очевидное использование занклв
чет не оч нравится, если честно. Допустим doA & doB return promise . Тогда мне придется дожидаться их выполненияв теле акшена

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()) ]);

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

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
Есть такая штука https://habrahabr.ru/post/310854/
посмотрел комменты почитал, его решение очень люд радует) в общем буду делать правильно. нафиг эти экшены в редюсерах - мрак это какой-то

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

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

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
Посмотри api fluture
промисы на анаболиках

Дмитрий
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
из админов

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
Дмитрий
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
и каждый раз новая функция ?

не, спасибо

Cenator
27.10.2017
20:51:30

Страница 2426 из 5115