Я пытаюсь получить данные из json-файла через службу в AngularJS (1.5.3). Я не могу извлечь данные из json и отобразить их в представлении. Вместо этого я получаю пустые значения. Ниже приведен код:AngularJS: Сервис не возвращает данные
//Service
angularStoreApp.factory('dataService', ['$http', function ($http, $q) {
return {
getProducts: function() {
var promise = $http.get('/api/json/products.json')
.then(function successCallback(response) {
if (typeof response.data === 'object') {
return response.data;
} else {
// invalid response
return "Invalid data";
}
}, function errorCallback(response) {
return "Invalid data";
})
return promise;
}
};
}]);
//Controller
/// <reference path="SearchController.js" />
angularStoreApp.controller('SearchCtrl', ['$scope', 'dataService', function ($scope, dataService) {
$scope.ProductItems = [];
dataService.getProducts()
.then(function (data) {
$scope.ProductItems = data;
});
}]);
<blockquote>
<h4 style="color: salmon">Welcome to the New Store
<br />
Please select the products you want and add them to your shopping cart.
<br />
When you are done, click the shopping cart icon to review your order and checkout.
<br />
</h4>
<div class="row">
<div class="col-sm-12" ng-repeat="ProductItem in ProductItems track by $index">
{{ProductItem.Name}}, {{ProductItem.Price}}
</div>
</div>
Update:
Ниже данные JSON, что у меня есть. [{ "itemName": "Notepad", "itemPrice": 12, "itemQuantity": 0 }, { "itemName": "Pen", "itemPrice": 8, "itemQuantity": 0 }, { "itemName": "Pencil", "itemPrice": 5, "itemQuantity": 0 }];
Может ли кто-нибудь помочь мне.
Куда вы обращаетесь к своему контроллеру? –
Оставьте несколько консольных журналов в своем контроллере. Давайте посмотрим, что происходит. Попробуйте console.log данных. –
@Gangadhar: Я использовал маршрутизацию. – Sreehari