angular - 如何使用 redux 在 Angular 中管理 in-change-out 对象流
问题描述
我在我当前的项目中使用 angular-redux 已经有一段时间了,最近我注意到非常奇怪的行为,在我看来,State 正在发生变异!然后我安装了 redux-freeze 并得到了很多object is not extensible
错误。
现在,有问题的流程如下所示:
我有一个容器
@select(selector_name) data: Observable<Data>
获取一片数据,然后我将数据传递给这样的子组件
<child-component [data]="data | async"...
在子组件中,我可以更改对象的某些字段并将data
对象发送回容器,然后容器将数据发送到服务器。
// child component
@Input() data: Data;
@Output() dataChanged = new EventEmitter<Data>();
someFunction(newFieldData: string) {
this.data['field'] = newFieldData; // at this point 'object is not extensible' error is thrown
this.dataChanged.emit(this.data);
}
什么是做基本相同但又防止object is not extensible
错误发生的正确方法?
解决方案
推荐阅读
- android - 在 Play 商店中通过初始付款启用年度订阅
- c - 如果在 C 中按整个数组的行打印,则二维数组输出不同的值
- swift - 非规范化数据时获取排序的 Firestore 文档
- mysql - MySQL 8 上 GeoDjango 的 SRID 问题
- java - Java - 创建游戏。套件、关联球员和球员套件字段
- django - order_by 基于条件
- javafx - 如何访问 Java 模块系统中的私有/包保护字段和方法?
- pytorch - 在 PyTorch 中做 ReLU1
- laravel - 只有管理员角色才能访问 /admin。但它不工作
- r - dplyr::complete/fill 时间序列,但仅限于有限的时间段