angular 并将 json 数据转化为真实对象(反之亦然)

angular and turning json data into real objects (and vice-versa)

为了简单起见:

我在打字稿中定义了 classes,它们具有方法和属性(有很多 getter/setter 逻辑)。然后我检索 json 匹配此类 class 的数据。我需要能够将这些 json 对象投影到我的 "smart" classes 中。我知道 class transformer 但我想知道这是否真的是做这类事情的首选方法。此外,我计划使用 ngrx,所以整个 class-转换看起来是错误的(服务器到 json,json 到状态,状态到 class?反之亦然? 我只是没有看到一个清晰的模式。

任何清晰度表示赞赏。谢谢!

我几乎完全按照您在相当大的应用程序中描述的方式进行操作。 我正在使用 class-transformer 将 JSON 从 http 调用转换为适当对象的实例,然后将生成的对象用作商店中的状态(除了我使用的是 Redux 而不是ngrx).

我觉得效果很好。

我不确定 "server to json, json to state, state to class? and viceversa?" 是什么意思。

对我来说(使用你的术语),它是 json、json 到 class、class 的服务器 (但状态只是对象的集合,即 class 个实例。即状态 个对象)。

如果我需要将状态发送回服务器,那么是的,我通常会从存储中提取适当的对象,将它们序列化为 JSON,然后将它们发送到服务器。但是... Angular HttpClient 会为您进行序列化,因此您通常不必编写该部分,除非您需要一些自定义序列化。