flutter - 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]);
这是主要问题,
你可以看到我给标题变量一个静态字符串。它工作正常并且在所有页面中都可见。
但是一旦调用 reducer,这个标题就会得到一个 null 值。我不想将任何值传递给标题。它应该是它自己的价值。我只更新了名单。
在javascript状态管理中,我们可以更新任何我们想要的变量,而不影响状态中的其他变量。我该如何在flutter redux中做到这一点?
谢谢你。
解决方案
返回新状态时需要传递当前状态的所有变量。
NameState reducer(NameState state, dynamic action) {
if (action is NameAction) {
return NameState(
name: []..addAll(action.showAction),
title: state.title,
);
}
return state;
}
推荐阅读
- android - Android Studio 错误:原因:为 cmake /path/to/project/app/tools/CMakeLists.txt 执行外部原生构建
- c - %s 和 %s%*c 有什么区别
- c# - 将 ASP.Net Core Web App 项目发送给某人的最佳实践?
- javascript - 角度异步数据
- python - 是否可以使用 yolo 和 OpenCv 进行注释
- r - R找到连续的月份
- javascript - 尝试清除 Electron 中的缓存,但似乎不起作用
- r - BiocCheck() 用于 Bioconductor 包提交,不显示带有错误/警告的 LINES。/Notes
- python - 从 jupyter 笔记本调用外部 py 模块
- python - 预测Vgg16的输出,混淆