Возврат данных из проанализированного XML в JSON

0

Я пытаюсь отобразить некоторые данные из JSON, которые содержат проанализированный XML, в угловом приложении, и я застрял.

Я могу извлечь другие поля так {{object.articleId}}. Как я могу извлечь дочерние данные из объекта контента? Например, если мне нужно извлечь "default-locale"? Я хотел бы иметь возможность {{object.content.default-locale}}, но это явно не работает.

[
{
    "articleId": "393800",
    "classNameId": 0,
    "classPK": 0,
    "companyId": 10157,
    "content": "{\"root\":{\"default-locale\":\"en_US\",\"dynamic-element\":[{\"index\":0,\"index-type\":\"keyword\",\"dynamic-content\":{\"content\":\"[\\\"General News\\\"]\",\"language-id\":\"en_US\"},\"name\":\"Top_News\",\"type\":\"radio\"},{\"index\":0,\"index-type\":\"keyword\",\"dynamic-content\":{\"content\":\"_All\",\"language-id\":\"en_US\"},\"name\":\"Location\",\"type\":\"list\"},{\"index\":0,\"index-type\":\"keyword\",\"dynamic-content\":{\"content\":\"CTC\",\"language-id\":\"en_US\"},\"name\":\"Business_Unit\",\"type\":\"list\"},{\"index\":0,\"index-type\":\"keyword\",\"dynamic-content\":{\"content\":\"hfhfahfcaf;\",\"language-id\":\"en_US\"},\"name\":\"Subtitle\",\"type\":\"text\"},{\"index\":0,\"index-type\":\"keyword\",\"dynamic-content\":{\"content\":\"dhfhfowejfwkfpw\",\"language-id\":\"en_US\"},\"name\":\"Intro_Text\",\"type\":\"text\"},{\"index\":0,\"index-type\":\"keyword\",\"dynamic-content\":{\"content\":\"1430697600000\",\"language-id\":\"en_US\"},\"name\":\"News_Date\",\"type\":\"ddm-date\"},{\"index\":0,\"index-type\":\"\",\"dynamic-content\":{\"content\":\"/image/journal/article?img_id=393803&t=1430750130449\",\"id\":393803,\"language-id\":\"en_US\"},\"name\":\"News_Image\",\"type\":\"image\"},{\"index\":0,\"index-type\":\"keyword\",\"dynamic-content\":{\"content\":\"flkdsjfldsjffa\",\"language-id\":\"en_US\"},\"name\":\"Freeform\",\"type\":\"text_area\"},{\"index\":0,\"index-type\":\"keyword\",\"dynamic-content\":{\"content\":\"test\",\"language-id\":\"en_US\"},\"name\":\"News_Tag_1\",\"type\":\"text\"},{\"index\":0,\"index-type\":\"keyword\",\"dynamic-content\":{\"language-id\":\"en_US\"},\"name\":\"News_Tag_2\",\"type\":\"text\"},{\"index\":0,\"index-type\":\"keyword\",\"dynamic-content\":{\"language-id\":\"en_US\"},\"name\":\"News_Tag_3\",\"type\":\"text\"}],\"available-locales\":\"en_US\"}}",
    "createDate": 1430750130000,
    "description": "",
    "descriptionCurrentValue": "",
    "displayDate": 1430749860000,
    "expirationDate": 1430836418000,
    "folderId": 236650,
    "groupId": 10184,
    "id": 393801,
    "indexable": true,
    "layoutUuid": "",
    "modifiedDate": 1430836418000,
    "resourcePrimKey": 393802,
    "reviewDate": null,
    "smallImage": false,
    "smallImageId": 393804,
    "smallImageURL": "",
    "status": 3,
    "statusByUserId": 10439,
    "statusByUserName": "Admin",
    "statusDate": 1430836418000,
    "structureId": "236652",
    "templateId": "236654",
    "title": "<?xml version='1.0' encoding='UTF-8'?><root available-locales=\"en_US\" default-locale=\"en_US\"><Title language-id=\"en_US\">Test</Title></root>",
    "titleCurrentValue": "Test",
    "treePath": "/236650/",
    "type": "general",
    "urlTitle": "test",
    "userId": 10439,
    "userName": "Admin",
    "uuid": "f06c946e-6efb-4a28-81f3-2a78e1a20814",
    "version": 1.0
  }
]

Заранее благодарим за помощь

Теги:

1 ответ

0

content - фактически строка json.

Вам необходимо перекрыть эти данные, когда вы их получите, и установите:

object.content = angular.fromJson(object.content);

Возможно, это может быть также очищено от источника, если вы контролируете api, который его отправляет

Ещё вопросы

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