json - 在 Angular 6 上使用随机属性名称解析 JSON
问题描述
我正在使用一个使用 JSON 的 Angular 6 应用程序,该 JSON 在地图数组上具有一些固定属性(开始、结束、可选)以及其他可以存在或不存在取决于先前请求的属性,请注意它的名称也有所不同,而且我无法控制它们,但它们始终是数字的。我的疑问是如何解析这些变量字段。
"speed": 122,
"name":"abc",
"data": [{
"start":123,
"end": 456,
"optional": false,
"AA": 12.3,
"S3D": 16.4
},{
"start":343,
"end": 446,
"optional": false,
"AA": 13.3,
"S3D": 14.4
}]
数据.ts
export class Data {
start: number;
end: number;
optional: boolean;
}
服务.ts
getData(): Observable<Data> {
return this.http.get<Data>(this.endPoint);
}
解决方案
好吧,如果您知道服务将响应的所有属性,您可以使用 "?:" 使您的界面具有可选属性,例如
export interface Data {
start: number;
end: number;
optional: boolean;
optionalProperty?: string;
optionalProperty2?: number;
}
通过这种方式,您无需担心会从服务接收到的属性,因为 typescript 会映射即将到来的属性
我希望这就是你要找的
推荐阅读
- angular - 新生成的 jhipster 应用程序未在 prod 模式下显示前端(404 错误)
- blockchain - 如何在 ERC20 中使用 enableSweep() 函数?
- wordpress - 在 Woocommerce 中信用卡被拒绝时防止创建帐户?
- hyperledger-fabric - composer-rest-server 身份验证重要问题
- html - 是否可以明确地使网格项始终出现在最后一行或最后一列?
- html - 移动浏览器上的 html 确认电子邮件损坏
- python - 单括号和双括号中的 Python Trim 帮助变量
- python - 对数对数尺度 sns.jointplot
- java - JVM 崩溃后无法打开 hprof 文件是否会在 JVM 崩溃时正确创建 hprof 文件?
- python - 从 Matplotlib Raster 到 Geoviews/Holoviews/hvplot:如何转换 x、y 和 z