【发布时间】:2018-06-01 10:08:53
【问题描述】:
我想从我的 JSON 中获取类别。请帮助我,因为我无法在li 中打印此内容。请让我知道我犯了什么错误。
<ul ng-repeat="categories in category">
<li>{{data.category}}</li>
</ul>
var app = angular.module('myapp', []);
app.controller('myCtrl', function($scope) {
$.getJSON("category.json", function(data, i) {
console.log(data[0].Category);
//var text = data[0].Category;
var array = [];
for (var i = 0; i < data.length; i++) {
var text2 = data[i];
console.log(text2);
array.push[text2];
}
return array
});
});
解析后的 JSON 如下所示:
[{
"Category": "Beauty",
"subcategory": [{
"name": "Baby Care",
"items": [{
"name": "Soap",
"Price": "10.00"
},
{
"name": "cream",
"price": 20.00
},
{
"name": "Drug Store",
"items": [{
"name": "Bandage",
"price": 5.00
}, {
"name": "stringe",
"price": 6.50
}, {
"name": " Pain Relief",
"price": 8.00
}, {
"name": "First Aid Kit",
"price": 14.99
}, {
"name": "Cold Relief",
"price": 6.50
}]
}, {
"name": "Health and Personal Care",
"items": []
}, {
"name": "HouseHold Supplies",
"items": [{
"name": "Air Freshener",
"price": 1.25
}, {
"name": "All Purpose Cleaner",
"price": 2.99
}, {
"name": "Disinfecting Wipes",
"price": 8.99
}]
}
]
}
【问题讨论】:
-
首先请注意格式化您的问题。在我编辑之前这是不可读的。其次,小心同时使用 jQuery 和 Angular。我建议只坚持一个。
-
好的,Rory,下次我会注意的,谢谢您的反馈。
-
尽量避免使用 jQuery,特别是当 AngularJS 提供等效功能时,这里使用 $http。此外,你不对返回的数组做任何事情,我想它应该分配给 $scope.category,但是你会遇到摘要循环的问题......请注意,一般来说,我们对数组使用复数(类别 - > 类别)和单数的迭代项(类别 -> 类别)。这将避免给未来的读者(包括您自己)造成混淆。