我是angularjs的新手。在我的json数据中有两个对象类别和sub_categories。
{
"status": true,
"data": {
"categories": {
"1": "Fasteners",
"2": "Paints",
"3": "Abrasives"
},
"sub_categories": {
"1": [
"Select All",
"Nuts",
"Bolts",
"others"
],
"2": [
"All",
"Industrial Paints",
"Primer"
],
"3": "3",
"4": "4"
}
}
}
我需要在各自的类别下映射sub_categories。我可以分别按ng-repeat="(keyCat,cat) in myData.data.categories "
和ng-repeat = "(keySubCat,subCat) in myData.data.sub_categories"
获取类别和子类别的关键值,但我无法找到映射它们的方法。
任何人都可以提供可能的解决方案或指导我如何映射这两个对象。
我的第二个问题是我如何实现对这个json对象的搜索。这不是一个json数组,所以我无法使用过滤器。
答案 0 :(得分:1)
您可以使用类别中的keyCat
。
<div ng-repeat="(keyCat,cat) in myData.data.categories">
{{cat}}
<div ng-repeat="subCat in myData.data.sub_categories[keyCat]">
{{subCat}}
</div>
</div>
虽然我会更改数据结构以在类别值中包含子类别。
答案 1 :(得分:0)
我会尝试这样的事情:
var categories = Object.keys(data.categories).map(function(key) {
var cat = {
id: key,
name: data.categories[key],
sub_categories: data.sub_categories[key]
}
return cat;
});
现在您已将其转换为数组,您可以更轻松地搜索它。