NgRx 8 - 检测到 class 的不可序列化状态
NgRx 8 - Detected unserializable state for class
我知道 NgRx 喜欢状态中的普通对象,但为什么不喜欢这种状态呢?
export class EventRecord {
Id = -1;
Title = "";
private occurred?: string = undefined;
get OccurredDate(): string {
return this.occurred ? this.occurred : "";
}
set OccurredDate(value: string) {
const mValues = moment(value);
if (mValues.isValid()) {
this.occurred = mValues.toISOString();
} else {
throw Error("Invalid date value");
}
}
PictureUri?: string;
}
这里有什么是不可序列化的?
我认为问题在于您无法序列化也具有附加行为(getter 和 setter)的 class。
您只能序列化纯数据 class(classes 没有行为,只有普通属性)。
我知道 NgRx 喜欢状态中的普通对象,但为什么不喜欢这种状态呢?
export class EventRecord {
Id = -1;
Title = "";
private occurred?: string = undefined;
get OccurredDate(): string {
return this.occurred ? this.occurred : "";
}
set OccurredDate(value: string) {
const mValues = moment(value);
if (mValues.isValid()) {
this.occurred = mValues.toISOString();
} else {
throw Error("Invalid date value");
}
}
PictureUri?: string;
}
这里有什么是不可序列化的?
我认为问题在于您无法序列化也具有附加行为(getter 和 setter)的 class。 您只能序列化纯数据 class(classes 没有行为,只有普通属性)。