Json 中的 Angular 2 参考
Posted
技术标签:
【中文标题】Json 中的 Angular 2 参考【英文标题】:Angular 2 reference in Json 【发布时间】:2018-04-16 11:18:29 【问题描述】:我正在处理 Ionic2 项目,我想创建一个模型并将其保存到一个 json 文件中,以便稍后读取它以再次构建我的模型。我的问题是关于对象引用,例如:
当我用对象 A、B、C 构建 json 时:
let A = new A();
let B = new B();
let C = new C();
A.B = B;
A.C = C;
B.C = C;
所以我的 json 是这样的:
A :
B : C : ... ,
C : ...
此时C,A.C和B.C是同一个对象。因此,当我对 C 进行更改时,B.C 和 A.C 也有相同的更改。
但是,当我保存在文件中,然后读取文件时,对象是副本,所以当我更改 B.C 时,A.C 保持旧状态。
所以我的问题:
是否有任何选项可以将引用保存在 Json 文件中或在读取相同对象后进行检测?
谢谢!
【问题讨论】:
【参考方案1】:当该对象被转换为 JSON 字符串然后再次返回时,它们不再作为同一个对象链接。此外,真的没有办法让 json 知道一个事物是对另一个事物的引用。此外,当您从 json 加载它时,它甚至不知道 A、B 和 C 是特定“类”的实例。它们只是普通的 javascript 对象 (POJO)。
如果您希望它们成为 A、B 和 C 的实例,则需要创建 A、B 和 C 的新实例,将 JSON 中的值设置为这些对象,然后设置 AC = BC或 BC = AC
【讨论】:
以上是关于Json 中的 Angular 2 参考的主要内容,如果未能解决你的问题,请参考以下文章
.net core SPA Angular中的脚手架管理员CRUD