Flutter redux обновляет определенную переменную состояния, не затрагивая другую переменную
У меня такое состояние
class NameState{
List name;
dynamic title;
NameState({this.title, this.name});
}
действие
class NameAction{
List showAction;
NameAction(this.showAction);
}
такой редуктор
NameState reducer(NameState state, dynamic action) {
if (action is NameAction) {
return NameState(
name: []..addAll(action.showAction)
);
}
return state;
}
и начальное состояние определяется так initialState: new NameState(title: 'this is title', name: []), middleware: [thunkMiddleware]);
Вот главная проблема,
Вы можете видеть, что я дал статическую строку переменной заголовка. Он отлично работает и виден на всех страницах.
Но как только вызывается редуктор, этот заголовок получает значение null. Я не хочу передавать какое-либо значение заголовку. Должно быть так, как есть, со своей собственной ценностью. Я обновлял только список имен.
В управлении состоянием javascript мы можем обновлять любую переменную, которую мы хотим, не затрагивая другие переменные в состоянии. Как я могу сделать это в флаттер-редуксе?
Спасибо.
1 ответ
Вам нужно передать все переменные текущего состояния при возврате нового состояния.
NameState reducer(NameState state, dynamic action) {
if (action is NameAction) {
return NameState(
name: []..addAll(action.showAction),
title: state.title,
);
}
return state;
}