我有一些
JSON包含来自我的客户端的匿名对象.是否有一些内置机制或外部库用于将这些匿名对象转换为强类型的TypeScript对象?是否有像AutoMapper这样的东西?
我的对象是复杂类型,复杂类型作为属性.
解决方法
获取一些示例数据并将其放在.ts文件中:
var people = [ { "name": "bob","height": 150,"pets": [{ "name": "spot","species": "dog" }] },{ "name": "jane","height": 142,"pets": [{ "name": "lucy","species": "cat" }] } ];
运行tsc –declaration yourFile.ts
现在你将拥有yourFile.d.ts:
declare var people: { "name": string; "height": number; "pets": { "name": string; "species": string; }[]; }[];
替换declare var people:with interface Person,删除trailing [],并(可选)删除引号:
interface Person { name: string; height: number; pets: { name: string; species: string; }[]; }