Как ссылаться на объект, который имеет точку с запятой в

Я использую AngularJS с API WordPress Rest. Я делаю запрос get, который возвращает объект. Чтобы получить рекомендуемое изображение, я должен использовать параметр "embed", который задает другой объект с именем _embedded.

Проблема в том, что объект, который я хочу, находится внутри _embedded и называется wp:featuredmedia. Если я ссылаюсь на это как угловой, я получаю синтаксическую ошибку.

Вот мой код

$http.get(queries[0], {'cache': true}).
    then(function(response) {
        $scope.careers_title = strip(response.data.title.rendered);
        $scope.careers_content = strip(response.data.content.rendered);
        $scope.careers_feature_image = strip(response.data.featured_media);
        console.log(response.data._embedded);
    });

Console.log возвращает это

Object {author: Array[1], wp:featuredmedia: Array[1], wp:term: Array[2]}author: Array[1]wp:featuredmedia: Array[1]0: Object_links: Objectalt_text: ""author: 1date: "2016-04-25T09:33:52"id: 46link: "http://localhost:8888/rubis/wordpress/energy-efficiency/tp-roundall/"media_details: Objectmedia_type: "image"mime_type: "image/png"slug: "tp-roundall"source_url: "http://localhost:8888/rubis/wordpress/wp-content/uploads/2016/04/tp-roundall.png"title: Objecttype: "attachment"__proto__: Objectlength: 1__proto__: Array[0]wp:term: Array[2]__proto__: Object

2 ответа

Решение

На самом деле вы не можете написать:

response.data._embedded.wp:featuredmedia

Это запрещенное имя собственности. Однако любая строка принимается, поэтому вы можете получить к ней доступ таким образом:

response.data._embedded['wp:featuredmedia']

Привет в дополнение к предыдущему примеру, если вы

использовать Google проверить, вы можете просто посмотреть на ответ json и скопировать путь jsonson

data._embedded["сор:featuredmedia"]. ["0"] media_details.sizes.medium

 [enter image description here][1]
Другие вопросы по тегам