redux.dart
redux.dart copied to clipboard
Redux for Dart
I'm wondering what is the best way to open a dialog? My scenario: In the middleware, I'm doing some async backend tasks. Depending on the result, I want to open...
A simple example to help many guys approach redux. - [ ] Reducers tests - [ ] Thunk middleware tests - [ ] Injecting repository - [ ] Using [built_value](https://pub.dev/packages/built_value)...
HI 👋 Redux Team, I've got a redux store that exists briefly and sometimes it can be disposed of while a long running middleware server call is in flight. If...
### Proposal It'd be great if `Store` had another generic type to be used as the `action` argument type in methods like `dispatch`, preventing non-action objects from being used as...
Added typed middleware base abstraction, that allows to create a typed middleware as a simple class, like ex. ``` class MyMiddleware extends TypedMiddlewareBase { @override dynamic dispatch(Store store, MyAction action,...
Allow to build entire reducers tree as const object. - add `CombinedReducer` class to easily combine reducers in const context - mark `TypedReducer` constructor as const - add `UntypedReducer` as...
The package consists in basically two files, which I guess it's okay because it's simple. However, I think if it was splitted it would reveal more "intent", make it more...
Current TypedReducer looks: ```dart class TypedReducer implements ReducerClass { /// A [Reducer] function that only accepts an action of a specific type final State Function(State state, Action action) reducer; ///...
For the following code: ```dart List createMiddlewares() { final onFetchWishListMiddleware = _onFetchWishList(); return [ TypedMiddleware(onFetchWishListMiddleware), ]; } Middleware _onFetchSomething(SomethingService service) { return (Store store, action, NextDispatcher next) async* { next(action);...
This is primarily a question about a difference between the middleware API here versus the JS version. redux.js exposes only a subset of the Store's API (`getState()` and `dispatch()`) to...