
Max
12.04.2017
18:39:35
Надо попробовать

Andrey ?
12.04.2017
18:39:44
Оно прям под капотом. Redux-actions только автоматизирует, а redux-act ещё и абстрагирует

from
12.04.2017
18:42:04
я никак не могу проникнуться redux-act

Google

Andrey ?
12.04.2017
18:42:55
А ты просто посмотри в примеры. Там редюсер обращается не к типу action, а к самой action
Для меня это было откровением

from
12.04.2017
18:44:08
в redux-actions то же самое же

Andrey ?
12.04.2017
18:44:10
Естественно, от твоих глаз скрывается, что там внутри все работает как и в redux-actions. Тот случай, когда абстракция оправдана

from
12.04.2017
18:44:19
не вижу откровения)

Andrey ?
12.04.2017
18:45:36
Стоп, тут возможно обычная путаница. Не к action а к action creator мне следовало сказать

from
12.04.2017
18:46:30
да что тут путать, ридми redux-actions глянь
const increment = createAction('INCREMENT');
// As object key in handleActions:
const reducer = handleActions({
[increment]: (state, action) => ({
counter: state.counter + action.payload
})
}, { counter: 0 });
именно то о чём ты говоришь

Дмитрий
12.04.2017
18:47:41
Нет
В этом вся разница

from
12.04.2017
18:47:50
так :)
я слушаю)

Дмитрий
12.04.2017
18:48:37
Просто если они одинаковые — не будет проблемы сделать тест?)

Google

Maxim
12.04.2017
18:49:35
Привет! Вроде бы здесь не запрещено публиковать вакансии?

Razzwan
12.04.2017
18:50:29

Волчик
12.04.2017
18:51:34

from
12.04.2017
18:51:37

Andrey ?
12.04.2017
18:51:41

Дмитрий
12.04.2017
18:51:42
Просто я хз, как это рассказать, я осознаю что полноценное определение просто в голове нигде не щелкает.
«В redux-act типом является action-creator, а не action/type» не говорит ни о чем

Andrey ?
12.04.2017
18:53:31
Видишь, редюсер мапит по константам (типам), а не по экшнам

Дмитрий
12.04.2017
18:53:49

Andrey ?
12.04.2017
18:53:52
И уж тем более не по экшн креэйторам

from
12.04.2017
18:54:46
всё что вы говорите справедливо точно так же про redux-actions
да и код смотрю — то же самое там: https://github.com/pauldijou/redux-act/blob/master/src/createAction.js#L85
используется .toString()
я не понимаю чего-то?...)

Andrey ?
12.04.2017
18:57:04

Razzwan
12.04.2017
18:57:10
я не понимаю чего-то?...)
скорее всего, решение какой-то очень конкретной проблемы. Вряд ли это можно понять без знания, какую это проблему решает

Andrey ?
12.04.2017
18:57:17
Это redux-actions

from
12.04.2017
18:58:22
так а что ты сказать этим скриншотом хочешь?
ну вот я вижу разницу разве что в том что в redux-act можно не называть экшны самому, а писать типа
const simpleAction = createAction()
но это ж профит минимальный в сравнении с
// Better to add a description
const betterAction = createAction('This is better!');

Google

from
12.04.2017
19:01:13
сами в документации пишут, что better добавить название)

Andrey ?
12.04.2017
19:01:30
Ты можешь в ключи handleAction засунуть action creators с возвращаемым payload?
То есть к примеру createAction('smth', payload => payload)

from
12.04.2017
19:02:42
в чём вопрос? в документации redux-actions именно это и делается везде

Andrey ?
12.04.2017
19:03:06
Вот именно, что нет

from
12.04.2017
19:03:06
как нет-то?
блин мы как будто о разном говорим :))

Andrey ?
12.04.2017
19:03:42
Там константы в handleAction прокидываются, глянь на скрин

from
12.04.2017
19:04:10
да блин зачем мне на твой скрин глядеть если ты документацию до середины не долистал даже
сам гляди на скрин))

Andrey ?
12.04.2017
19:04:27
Я её наверное наизусть знаю

from
12.04.2017
19:04:28

Kirill
12.04.2017
19:04:59
Буду премного благодарен, если реализуете мой пример на redux-actions. Сам его юзал немного, но у вас опыта больше и хочу посмотреть best practice.
Можете прям клонировать мой репозиторий и там зафигачить.

from
12.04.2017
19:06:03

Сергей
12.04.2017
19:06:04
какие интересные пожелания

Razzwan
12.04.2017
19:06:37
Все пытаюсь понять, кто противник redux-actions?

Kirill
12.04.2017
19:06:46
Пример то детский, 2 экшена и 2 редьюсера.

from
12.04.2017
19:07:17

Google

Razzwan
12.04.2017
19:07:17

Kirill
12.04.2017
19:07:50
https://github.com/Voronar/redux-multireducer
Там всё заводится в 2 команды.
install & start

from
12.04.2017
19:08:41
так, не, давайте redux-act и redux-actions обсуждать, а не синглтон этот :)

Kirill
12.04.2017
19:09:09
Вот именно и хочу увидеть реализацию на redux-actions)

lamo2k
12.04.2017
19:10:02
React fiber на сервере кто-то заводил?

Andrey ?
12.04.2017
19:11:23
Ладно, не payload => payload, это я тупанул, ведь это ж как раз единственный кейс, где они пересекаются. Например (a, b) => ({_a: a, _b: b}). С redux-actions тебе понадобится взять тип action, а с redux-act ты возьмёшь только actionCreator. Тип там используется внутри.
Всё, друзья, я спать
Доброй ночи всем

Admin
ERROR: S client not available

from
12.04.2017
19:12:16
в общем смотрю всё больше на redux-act и вижу, что задачи выполняет вообще те же самые, что redux-actions
плюс имеет чуть больше плюшек типа action.assignTo(store) и т.п.

Andrey ?
12.04.2017
19:13:16
Что задачи те же самые, это конечно)

Razzwan
12.04.2017
19:14:57
Вот именно и хочу увидеть реализацию на redux-actions)
недостаток твоей реализации в том, что нам придется создавать экземпляр класса для каждого случая использования, что будет увеличивать объем конечного скомпеллированного кода, хоть и реализация на redux-actions будет более много словной.


from
12.04.2017
19:16:11
Ладно, не payload => payload, это я тупанул, ведь это ж как раз единственный кейс, где они пересекаются. Например (a, b) => ({_a: a, _b: b}). С redux-actions тебе понадобится взять тип action, а с redux-act ты возьмёшь только actionCreator. Тип там используется внутри.
ты не прав, либо непонятно изъясняешься :)
вот так выглядит код на redux-act:
const action = createAction('some-name', (a, b) => ({ a, b }))
const reducer = createReducer({ [action]: (state, payload) => state });
вот так выглядит код на redux-actions:
const action = createAction('some-name', (a, b) => ({a, b }));
const reducer = handleActions({ [action]: (state, payload) => state });
в чём разница-то? :))

lamo2k
12.04.2017
19:17:57
Пока такая тема для пользователей redux-actions может быть полезно https://www.npmjs.com/package/redux-actions-helpers нам очень понравилось.

Kirill
12.04.2017
19:20:32

Razzwan
12.04.2017
19:21:34

Дмитрий
12.04.2017
19:22:23

Google

Kirill
12.04.2017
19:23:25
Да. У вас они уже будут на этапе рантайма.

Дмитрий
12.04.2017
19:23:32
Нужна всего одна функцияю Одна!)
1, one, ein, о д н а

Kirill
12.04.2017
19:24:53
Блин, не понимаю. Покажи на моём примере что это за одна магическая функция? Я уже чувствую откровение.

Дмитрий
12.04.2017
19:25:53
const addAction = (list, payload) => [...list, payload]
Готово, твоя функция работает с любым нужным экшном

Razzwan
12.04.2017
19:26:41
я вот такой подход использую: https://gist.github.com/Razzwan/69ad0b94b9f04b6677dbceeeb4561b77
и эти 4 файла в директории store/entities/entity/

Дмитрий
12.04.2017
19:27:52
_const.js не нужен

Razzwan
12.04.2017
19:28:08

Kirill
12.04.2017
19:28:16

Дмитрий
12.04.2017
19:28:33
?

Dmitry
12.04.2017
19:28:44
@javascript_jobs :D

Razzwan
12.04.2017
19:28:55
_const.js не нужен
я их использую для обеспечения тождественности названий экшенов в actions.js и reducer.js

Kirill
12.04.2017
19:29:06
Только в стиле true redux и по методологии flux.
Просто уже хочу увидеть что это за чудо-подход.

Дмитрий
12.04.2017
19:33:11
ты не прав, либо непонятно изъясняешься :)
вот так выглядит код на redux-act:
const action = createAction('some-name', (a, b) => ({ a, b }))
const reducer = createReducer({ [action]: (state, payload) => state });
вот так выглядит код на redux-actions:
const action = createAction('some-name', (a, b) => ({a, b }));
const reducer = handleActions({ [action]: (state, payload) => state });
в чём разница-то? :))
redux-act концентрируется на этом примере, а не мимоходом упоминает это, считай как use strict
В целом да, твоя взяла, -actions теперь тоже так умеет ?

lamo2k
12.04.2017
19:33:35

from
12.04.2017
19:34:12
на дискорде q-n-a с эндрю кларком кстати как раз

Дмитрий
12.04.2017
19:38:30
Увы, я не владею телепатией) В ридми не было очень многого

Ҫѐҏӗѫӑ
12.04.2017
19:38:54
дискорд не нужен
как там вообще люди сидят хз