基本上,我将数据存储在JSON文件中作为对象,格式如下:
{
"name": {
"source1": ____,
"source2": ____,
"source3": ____
},
"xcoord": {
"source1": ____,
"source2": ____,
"source3": ____
}
}
我使用this strategy(转到“执行多个并发的http请求”)通过服务将JSON数据加载到我的组件中。
现在我需要一个ngFor
语句来遍历“name”键,返回每个源的名称值。我想在<select>
中显示所有这些名称值。我还希望每个value
的{{1}}成为数据对象“name”键中的“source1”,“source2”,“source3”。
我不确定我应该怎么做,而且我对Typescript / Angular2有点不熟悉。做我想做的最好的策略是什么?也许我应该为<option>
语句创建一个管道来读取我的对象作为数组?或者我可能会创建一个重新格式化数据的新类,只返回一个名称数组?
无论哪种方法更好,我很遗憾不知道如何做任何一种方法。我很感激一些帮助!
答案 0 :(得分:0)
我需要一个ngFor语句来遍历“name”键, 返回每个源的名称值
要使用name
迭代jsonObject.name
,您需要使用var selectOptions = '';
var _getName = jsonObject.name; // will return value of name object
Object.keys(_getName).forEach(function(item){
selectOptions +='<option value ="'+_getName[item]+'">'+(_getName[item])+'</option>';})
$("#someSelectId").append(selectOptions)
来访问它。
Object.keys将返回其属性的数组。
forEach用于遍历数组
{{1}}