angularjs - Angular 2 获取 JSON 数组中单个条目的值

标签 angularjs angular typescript

就像标题所说,我正在尝试获取仅包含一个对象的 JSON 数组的一些值。我需要解析组件内部的所有内容才能使用这些值。我终于需要 TAG、NAME 和 COMM 的值。

这是开始的情况。我有这个:

{ "site": "Dimension", "data": [ { "TAG": "DimTime", "NAME": "Zeit", "COMM": "Zeitdimension", "$$index": 1 } ] }

然后我使用以下方法分解该对象:

currentObject['data']

我得到了:

[ { "TAG": "DimTime", "NAME": "Zeit", "COMM": "Zeitdimension", "$$index": 1 } ]

但我现在正在尝试找到一个解决方案来获取 TAG、NAME 和 COMM 的值。问题是我总是在 json 数组“data”中有一个对象。或者也许可以去掉外括号?

你们有什么想法吗?

最佳答案

您说您需要值 TAG、NAME 和 COMM,但您不确定如何执行此操作、将数据转换为对象或保留数组。好吧,这实际上取决于您:)但是让我们以您的示例数据为您提供两个选项:

“数组选项”:

currentObject['data'] = [{"TAG":"DimTime","NAME":"Zeit","COMM":"Zeitdimension","$$index":1} ]

在您看来,您可以使用数组中的第一个对象(您唯一的对象)输出值。

{{currentObject['data'][0].TAG}} 
{{currentObject['data'][0].NAME}} 
{{currentObject['data'][0].COMM}}

如果你想将数据转换为对象,也可以,你可以使用Object.assign。这至少会让你的代码变得更短;)

dataObj = Object.assign({}, currentObject['data'][0]);

然后在您的 View 中可以显示:

{{dataObj.TAG}} 
{{dataObj.NAME}} 
{{dataObj.COMM}}

如果你喜欢,

您可以阅读有关 Object.assign here 的更多信息

工作 plunker

关于angularjs - Angular 2 获取 JSON 数组中单个条目的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41811199/

相关文章:

angularjs - Angular2方法绑定(bind)错误: "value has changed after it was checked"

javascript - javascript中的angular ng-repeat预过滤器

javascript - Angular : chaining promises over forEach loop

Angular 4创建到同一组件的不同语言路径

angular - 错误类型错误 : Cannot read property 'get' of undefined

typescript - typescript 可以根据关键条件定义接口(interface)结构吗?

javascript - AngularJS:带有过滤器和 ng-change 的 ng-options

javascript - session 超时不断调用 Angular 6 中的函数

javascript - AngularFire2 - 如何在页面刷新后保持登录状态

typescript - Vue 3.0 中的事件处理更改?