Closed wizd closed 4 years ago
Hi @wizd
Why would you make async actions? It is not relevant given that reducers should be pure functions and async
is not pure. If you want to make async
calls, you need to create effects.
I do not have a schema about that right now but I can show the one made by the @ngrx team:
You have 2 loops:
I hope it's clear. Feel free to ask question if you need to!
Thank you for the guide. I found it a little hard to migrate legacy code to the redux pattern. ReduxSimple is a great library though the learning curve is quite steep. I like it.
On Sat, Nov 30, 2019 at 4:49 AM David Bottiau notifications@github.com wrote:
Hi @wizd https://github.com/wizd
Why would you make async actions? It is not relevant given that reducers should be pure functions and async is not pure. If you want to make async calls, you need to create effects.
I do not have a schema about that right now but I can show the one made by the @ngrx https://github.com/ngrx team:
[image: image] https://user-images.githubusercontent.com/6053067/69889549-d2b95100-12f1-11ea-9cc2-4a51b37c780b.png
You have 2 loops:
- pure loop (with state, reducers and selectors, then the state mutates the components)
- impure loop (effects that listen to actions, and can dispatch new actions to update the state)
I hope it's clear. Feel free to ask question if you need to!
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Odonno/ReduxSimple/issues/67?email_source=notifications&email_token=AAVUHV6PR55S75ZCZQAWEF3QWF56VA5CNFSM4JS6TVA2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEFPRFOI#issuecomment-559878841, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAVUHV3T6HFHQV4EM2JHG4TQWF56VANCNFSM4JS6TVAQ .
How to support async mode for the On method? Actions in my app are mostly async.
On<Action, State>( async (state, action) => { return await ... })
Error CS4010 Cannot convert async lambda expression to delegate type 'Func<State, Action, State>'. An async lambda expression may return void, Task or Task, none of which are convertible to 'Func<State, Action, State>'.