【发布时间】:2017-11-30 19:46:37
【问题描述】:
在构造函数中我做这样的事情
selectedDate: Object;
// construtor
this.selectedDate = {};
this.selectedDate['date'] = new Date();
this.selectedDate['pristine'] = new Date();
在另一个通过按钮单击调用的函数中,我执行以下操作:
this.selectedDate['date'] = new Date(this.selectedDate['pristine']);
我收到以下错误:
TypeError:无法分配给对象“[object Object]”的只读属性“date”
【问题讨论】:
-
你能显示
onClick函数吗 -
你在使用 redux 吗?如果
this.selectedDate以某种方式放入动作负载中并分配给reducer 中的状态,则如果没有其他动作通过管道,您将无法直接修改它。 -
听起来你应该只定义类型而不是使用
Object;那时您不妨使用any并完成它。 IOW,使用selectedDate: { date: Date, pristine: Date }(或任何你的属性)。 -
@Ryan:是的,我正在使用 redux,现在我明白为什么我会看到这个问题。您的分析是正确的,谢谢!!
标签: javascript angular typescript redux ngrx