Флаттер набрал
Я новичок в изучении флаттера и редукции библиотек, но у меня застрял правильный список промежуточного программного обеспечения.
import 'package:flutter_app/incrementButtonScreen/IncrementButtonActions.dart';
import 'package:flutter_app/incrementButtonScreen/IncrementButtonLogicStates.dart';
import 'package:flutter_app/incrementButtonScreen/IncrementButtonState.dart';
import 'package:redux/redux.dart';
List<Middleware<IncrementButtonState>> createIncrementButtonStoreMiddleware = [
TypedMiddleware<IncrementButtonState, Increment>(createIncrement("typed")),
createIncrement("normal")
];
Middleware<IncrementButtonState> createIncrement(String logger) {
return (Store store, action, NextDispatcher next) {
print('\n ACTION $logger : ${new DateTime.now()}: $action');
// some api call happening here and passing the APi call result next
next(IncrementButtonLogicIncrementState(220, 15.0));
};
}
проблема в том, что я получаю журналы только из обычного промежуточного программного обеспечения, но не из типизированной версии. Пытаюсь переделать контрпример и диспетчерское действие class Increment{}
по потрясающему клику store.dispatch(Increment);
Я создаю свой магазин здесь:
Store createIncrementButtonStore() {
return new Store<IncrementButtonState>(_counterReducer,
initialState: IncrementButtonState.initial(), middleware: createIncrementButtonStoreMiddleware);
}
когда я заменю TypedMiddleware<IncrementButtonState, Increment>
с TypedMiddleware<IncrementButtonState, dynamic>
тогда я получаю это работает
ACTION typed : 2018-08-06 12:04:45.778293: Increment
ACTION normal : 2018-08-06 12:04:45.778411: Instance of 'IncrementButtonLogicIncrementState'
1 ответ
После долгого поиска я обнаружил, что отправляю Increment
который эквивалентен Increment.class в Java, я считаю, после отправки Increment()
работает нормально