Мое обслуживание захватывает данные JSON и успешно возвращает данные контроллеру, однако у меня возникла проблема с использованием ng-repeat для итерации по именам ключей.ng-repeat ключ не отображается с использованием данных JSON
Я хочу отображать названия ключей на странице в виде списка, так как они являются названиями категорий.
В настоящее время ng-repeat повторяет правильное количество раз, но не отображает имя ключа.
Контроллер:
app.controller('getNav', function(getJSONData, $scope) {
var path = 'json/navigation';
getJSONData.async(path).then(function(d) {
$scope.data = d;
});
});
Услуги:
app.factory('getJSONData', function($http) {
var getJSONData = {
async: function(path) {
var promise = $http.get(path).then(function (response) {
return response.data;
});
return promise;
}
};
return getJSONData;
});
JSON данных:
{
"data": {
"category_a": ["a", "b", "c", "d"],
"category_b": ["e", "f", "g"],
"category_c": ["h", "i", "j"]
},
"response": "Navigation"
}
Вид:
<ul ng-controller="getNav">
<li data-ng-repeat="(key, value) in data.data">Category name is: {{key}}</li>
</ul>
Вы нг-повтора в порядке: [plunker] (http://plnkr.co/edit/CSvrUOmkcuS8qHUIbv1C). – Stewie
Это меня смущает еще больше, потому что я не знаю, почему приведенный выше пример не работает. Контроллер успешно извлекает данные, и область видимости выполняет итерацию, но никогда не отображает имена ключей. – Malcr001
Используйте 'console.log()' в вашей функции обратного вызова getJSONData, чтобы проверить/сбросить данные JSON, возвращаемые с вашего сервера, чтобы убедиться, что он отформатирован правильно. –