Json 使用Typescript的持久性

Json 使用Typescript的持久性,json,node.js,angular,typescript,electron,Json,Node.js,Angular,Typescript,Electron,我目前在一个使用Electron(基本上是含铬的nodejs)和Angular2的项目中工作 有没有办法将typescript对象保存到文件中 目前,我正在json文件中保存对象。问题是所有对象方法都丢失了 我是否应该尝试保存_proto__变量 我应该使用框架还是特殊的数据库引擎 今天,我从一个json文件中读取对象,并使用json.parse对其进行解析。然后我重新分配了一个新对象中的所有属性,这是不可伸缩的 欢迎提出任何建议 提前谢谢。José您可以将变量导出为json格式,如: myJs

我目前在一个使用Electron(基本上是含铬的nodejs)和Angular2的项目中工作

有没有办法将typescript对象保存到文件中

目前,我正在json文件中保存对象。问题是所有对象方法都丢失了

我是否应该尝试保存_proto__变量

我应该使用框架还是特殊的数据库引擎

今天,我从一个json文件中读取对象,并使用json.parse对其进行解析。然后我重新分配了一个新对象中的所有属性,这是不可伸缩的

欢迎提出任何建议


提前谢谢。José

您可以将变量导出为json格式,如:

myJsons.ts

export var myVar = {
  name: "John"
}
import {myVar} from '../path-to-myJsons'

this.myJson = myVar;
this.name = this.myJson.name;
并在ts文件中使用它们,如:

myComponent.ts

export var myVar = {
  name: "John"
}
import {myVar} from '../path-to-myJsons'

this.myJson = myVar;
this.name = this.myJson.name;
我是警察

我只是找到了这个图书馆,很显然,它解决了这个问题

那怎么办呢?如何在用户数组中包含用户对象而不是 普通javascript对象?解决方案是创建用户的新实例 对象并手动将所有特性复制到新对象

替代品?是的,你可以使用这个图书馆。这个图书馆的目的 帮助您将普通javascript对象映射到 已创建的类


我会给你一个机会和反馈。Bests

我认为他的问题是私人成员消失了——他们中的任何一个都消失了。@Sebas哦,然后我误解了这个问题。OP你能澄清一下吗?问题是当我将一个对象保存到一个文件中时,所有的类“meta”(公共和私有方法)都会丢失。我需要找到一种方法将整个对象保存在一个文件中(json、文本、二进制……我不在乎)。正如@Louis所写,对象序列化可能是解决方案。我认为任何持久性框架都需要您指定某种序列化模式。我不知道nodejs有什么ORM,但是如果我必须自己做的话,我会先定义一个序列化协议,这完全取决于项目的具体需求。我已经用一个支持有限类型集的特殊系统完成了这项工作。序列化将类型记录为数字,然后记录必须传递给构造函数的参数。反序列化程序将类型号转换为构造函数,然后通过将参数传递给构造函数来实例化对象。这几年来一直运作良好。设计它的项目不会从更复杂的东西中受益。其他项目可能会有其他需求,这将导致此解决方案不充分。Hi@sct999。是的,它工作得很好。但是,如果您有时间,请检查其他可选的序列化方法。在那个机会中,我最终解决了这个特定问题,这是一个肮脏的把戏:我使用JSON.stringify(object)将对象保存在一个文本文件中,然后使用JSON.parse()加载它。我在某个地方读到,这是最快的方法,但我记不起引用,对不起。胜过