#html #json #angularjs #controller
#HTML #json #angularjs #контроллер
Вопрос:
Я отправляю JSON в AngularJS через узел. Я успешно получаю правильные данные в контроллере, которые я печатаю на консоли. Но когда я пытаюсь заполнить таблицу HTML с помощью контроллера, это не работает. Я заметил, что если я использую те же поля, но с «задачами» вместо «задачи», это заполнит поле «статус» в таблице, поскольку объект «задачи» имеет поле «статус», поэтому область технически работает, но мне не повезло с использованием полей «задача».
Контроллер
projectApp_TaskList.controller('getTaskListController', function ($scope, $http) {
$http.get('/getTaskList')
.then(function (data) {
$scope.tasks = data;
console.log($scope.tasks);
});
});
Таблица
<div>
<table>
<thead>
<tr>
<td>Priotity</td>
<td>Status</td>
<td>Title</td>
<td>Limit Date</td>
</tr>
</thead>
<tbody>
<tr ng-repeat="task in tasks">
<td>{{task.priority}}</td>
<td>{{task.status}}</td>
<td>{{task.title}}</td>
<td>{{task.limitDate}}</td>
</tr>
</tbody>
</table>
</div>
Комментарии:
1. Как выглядит структура данных? Обратите внимание, что вызываемый вами объект
data
является объектом ответа , и нужные вам данные находятся вdata.data
2. Я добавил изображение, чтобы показать, что я получаю из console.log (данные);.
Ответ №1:
Возвращаемый объект $http.get().then
является объектом ответа, который имеет несколько свойств
Нужные данные находятся в свойстве data
этого объекта
Попробуйте
$http.get('/getTaskList')
.then(function (response) {
$scope.tasks = response.data;
console.log($scope.tasks);
})
Комментарии:
1. Это сработало для меня. Спасибо за быстрый ответ и помощь.