Получение одиночного объекта JSON в массиве

0

Я застреваю, пытаясь извлечь один элемент json из массива из моего $ http get.

Я попытался использовать область действия и несколько других methods-, но никто не работает.

Появляется объект/данные json (в инспекторе сети Chrome), и мои директивы в моем HTML правильны.

Как я могу заставить Angular понять, что дать один элемент в массиве json директиве?

Мой объект выглядит так:

[{"id": 1, "name": "test1"}]

function productsApiProvider($http, $stateParams) {

    var product_id = $stateParams.product_id;

    var getApiData = function () {
        return $http.get(BASE_URL + product_id);
    };
    var BASE_URL = 'http://123.com/api/item/';

    return {
        getApiData: getApiData
    };

}


function ProductsCtrl($scope, $log, productsApi, UserService) {
    $scope.product=[];
    productsApi.getApiData()
        .then(function (result) {
            console.log(JSON.stringify(result.data)) //Shows log of API data
            $scope.products.unshift(result.data);
        })
        .catch(function (err) {
            $log.error(err);
        });
}
  • 0
    Как выглядит result.data ? Вы пытаетесь получить один элемент из API или выполнить функцию фильтра, передавая product_id ?
  • 1
    Является ли result.data[0].name значением «test1» то, что вам нужно здесь для объекта result.data[0]
Теги:

2 ответа

0

Добавляя ответы от комментариев, чтобы их можно было принять, закрыв это.

result.data[0].name value "test1" - это то, что вам нужно здесь для объекта result.data[0]

0

Должен быть

$scope.product.unshift

не

$scope.products.unshift

обратите внимание на "s" в конце продукта.

  • 0
    Это не сработало для меня. Но result.data [0] .name сработал так, как предложил Марк Шультхайс

Ещё вопросы

Сообщество Overcoder
Наверх
Меню