克隆对象时出现问题。我有尝试向其添加策略对象的策略数组。它在某些时候出现以下错误消息时会起作用。有人可以告诉我问题可能出在哪里。 策略对象由对象的对象组成。在Add方法中,我试图将零元素的Strategy添加到strategy数组。
export interface Strategy {
domicile: Domicile;
captiveAssumption: StrategyCaptiveAssumption;
modelingAssumptions: StrategyModelingAssumption;
selectedLinesOfBusiness: SelectedLineOfBusinessInput[];
accountRules: StrategySpecialAccountRules;
minCapitalContribution: StrategyMinCapitalContribution;
results: Results;
}
将循环结构转换为JSON 在JSON.stringify()
add() {
if (!this.showAddStrategy) {
return;
}
const strategy: Strategy = JSON.parse(JSON.stringify(this.strategies[0]));
this.strategies.push(this.strategies[0]);
this.save.emit();
this._expandLastStrategy();
}
答案 0 :(得分:2)
圆形结构是将自身称为值的结构。 JSON.stringify
不支持这种结构,因为它将导致无限长的字符串。
您需要的是不使用JSON.stringify
的深度克隆功能。可以在here中找到这种实现。