@react_js

Страница 635 из 5115
Арсений
17.11.2016
21:51:35
Пока у этого только абстрактное преимущество что типа это чистый js. Но это чистый js в основном за счёт babel

Юра
17.11.2016
21:52:12
Может быть ты дефолтное значение в редьюсере указал null?
Спасибо за на водку у меня null стояло место массива

Арсений
17.11.2016
21:53:35
В clojurescript конечно поадекватнее это всё

Google
Арсений
17.11.2016
21:53:51
Чистые функции меняют произвольные структуры данных

Tigran
17.11.2016
22:16:52
как сделают pendingWorkPriority, так поменяет в кейсах с анимацией. И я правильно понял, теперь компоненты будут обновляться не в 1 фрейм а ассинхронно, т.е. постепенно?
Всем привет, мб тут есть кто-нибудь, работавший или слышавший, что-нибудь интересное про сравни.ру, предлагают офер, думаю вот

Ой, сори, ответом случайно получилось

Ilya
17.11.2016
22:19:47
Слышал

Офис хороший, ребята адекватные работают

Valentin
17.11.2016
22:48:25
А напомните чатик с вакансиями плз

Кисик
17.11.2016
22:51:40
JavaScript Jobs — вакансии и аналитика Публикуем вакансии и запросы на поиск работы по JavaScript, React.js, Node.js, React Native и пр. Full-time, part-time, remote и разовые подработки. Обмен инсайдами и аналитикой на рынке труда. См. также: @js_ru, @nodejs_ru, @mobile_jobs, @devops_jobs https://telegram.me/javascript_jobs

Valentin
17.11.2016
22:58:59
Сяп

Kreizo
18.11.2016
07:26:42
http://i.prntscr.com/d4ac9d9cde5842439604130698fe0082.png

подскажите кто работает на реальных проектах

это нормально дизпатчить в стору прям с функции ?

и запускать саму функцию из компонента где она рендерится

Google
Kreizo
18.11.2016
07:30:19
а как должно быть?

Исмаил
18.11.2016
07:30:34
Через экшн

Kreizo
18.11.2016
07:30:48
я в принципе понял как работает bindActionCreators

Andrew
18.11.2016
07:30:51
лучше диспатчить евенты из асинхронных экшенов. Посмотри в сторону redux-saga, redux-think

Kreizo
18.11.2016
07:31:08
но не получается с асинхронным кодом совместить

Kreizo
18.11.2016
07:32:47
http://i.prntscr.com/f803aaceaa544b14adad65d138b22ee1.png

смотрю документацию с гитхаба

https://github.com/gaearon/redux-thunk

Арсений
18.11.2016
07:33:33
Саги лучше

Dmitry
18.11.2016
07:35:10
Но массивнее

Исмаил
18.11.2016
07:38:43
http://i.prntscr.com/f803aaceaa544b14adad65d138b22ee1.png
К чему это? Обрати внимание на функцию, которая диспатчится. Она отправляет редьюсеру разные экшены в момент завершения асинхронной функции в зависимости от результата ее выполнения

Kreizo
18.11.2016
07:41:04
http://i.prntscr.com/19693ce5b4dc4a8c94a0f07fcca017ce.png

ну вот есть функция

внутри нее переменная streamers

Исмаил
18.11.2016
07:41:20
Thunk позволяет диспатчить не готовый экшн, а функцию, которая вернет его, взяв из других экшн криэйторов

Kreizo
18.11.2016
07:41:28
где я эту функцию должен запустить ?

она же ничего не возвращает

кроме промиса

http://i.prntscr.com/1d977b5d1e7542ef86a3e0384eabc0fd.png

Google
Kreizo
18.11.2016
07:46:05
в компонентдидмаунт я запускают функцию bindActionCreators

Исмаил
18.11.2016
07:46:22
Я не могу понять из твоего кода что тебе нужно сделать. Если ты работаешь с редаксом, асинхронный код должен лежать в отдельном экшене, в котором ты через thunk и connect получишь доступ к диспатчеру, которому после получения данных с api можешь скормить нужный action creator. Axios.js - что это за файл вообще, для чего он?

Kreizo
18.11.2016
07:47:29
там функция где 2 запроса к апи

http://pastebin.com/P06rtUhV

сортировка итд

ну и промисс.all

pepsi ¯\_(ツ)_/¯
18.11.2016
07:48:03
просто ты должен вызывать dispatch() с нужным экшеном внутри .then() и/или .catch()

Kreizo
18.11.2016
07:48:48
store.dispatch ?

я так и делал

но сказали что не правильный подход

then у меня внутри этой функции

у меня не получается оттуда эти данные вытащить

axios.all([getDota(), getCS()]) .then(axios.spread(function (dota, cs) { let streamers = dota.data.streams.concat(cs.data.streams) streamers.sort(sortByNumber) }))

? ethorz
18.11.2016
07:51:37
оп, дота стримы)

Kreizo
18.11.2016
07:51:56
https://kreiz0.github.io/projects/godota/

? ethorz
18.11.2016
07:52:29
неплохо, но а в чем смысл?

тот же твич

Kreizo
18.11.2016
07:52:44
там есть предосмотр стрима

Исмаил
18.11.2016
07:52:49
Ты их и не вытащишь, тебе нужно на месте, внутри .then() продиспатчить нужный action. Который запихнет в стор отсортированные данные

pepsi ¯\_(ツ)_/¯
18.11.2016
07:53:18
ну и промисс.all
пририсовал тебе немного кода ^__^ http://take.ms/WlXxM

Google
Сергей
18.11.2016
07:53:49
Писали бы с использованием recompose и проблем бы не было

Kreizo
18.11.2016
07:53:54
тогда зачем мне bindActionCreators ?

если я просто запускаю функцию

с компонента

и она сама дизпатчит в стор

pepsi ¯\_(ツ)_/¯
18.11.2016
07:54:44
чтобы забиндить getStreamers например, если тебе нужно, чтобы оно по нажатию на кнопку начинало загружать

ну или при маунте какого-то компонента

Kreizo
18.11.2016
07:55:41
this.props.actions.getStreamers() ?

вешаю на клик ?

Исмаил
18.11.2016
07:56:31
Да

Или вызываешь в маунте

Kreizo
18.11.2016
07:57:49
если мне нужно что бы оно автоматически загружалась перед render

componentWillMount () { getStreamers() }

я пишу вот так ?

pepsi ¯\_(ツ)_/¯
18.11.2016
07:58:08
this.props.actions потерял

Исмаил
18.11.2016
07:58:29
Рекомендуют выполнять асинхронные действия в did mount

Kreizo
18.11.2016
08:02:44
извиняйте если слишком тупой вопрос

новичок еще

http://i.prntscr.com/a85bf082c6a44569b4346d224ea5046c.png

вот есть функция ggwp

Google
Kreizo
18.11.2016
08:03:10
в ней происходит дизпатч

справа функция action creator

getStreamers

как эту функцию ggwp

привазять с acttion creator функцией

там только type

pepsi ¯\_(ツ)_/¯
18.11.2016
08:08:19
не понятно, зачем тебе ggwp и getStreamers

Kreizo
18.11.2016
08:09:00
ggwp делает всю асинхронную работу

и дизпатчит данные

а справа пустая функция привязанная

acttion creator

Artyom
18.11.2016
08:11:24
отличне названия ;)

тебе на помощь могут прийти redux-thunk либо redux-promise-middleware либо redux-saga в зависимости от того что тебе покажется более удобным

Kreizo
18.11.2016
08:13:14
у меня установлен redux-thunk

просто есть отдельно функция

в которой все происходит

и ее нужно связать с этим bindActionCreators

Исмаил
18.11.2016
08:14:31
Сплит ради сплита

Artyom
18.11.2016
08:15:17
с redux-thunk ты можешь вместо объекта вернуть функцию

а ней сделать вызов ggwp

Kreizo
18.11.2016
08:16:51
https://github.com/gaearon/redux-thunk

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