Я использую Http.get для получения информации с помощью формата JSON с помощью углового 2.Угловое 2 JSON Синтаксический не работает
Вот сервис я использую, чтобы получить данные в формате JSON, который работает:
getProd() {
return this._http.get('https://restcountries.eu/rest/v1/capital/tallinn')
.map(res => res.json());
}
Тогда в компоненте конструктора Я использую:
this._etsyService.getProd().subscribe(product => {
this.product = product;
});
Затем в шаблоне вида, если указать:
{{ product | json }}
я получаю в браузере сырой JSon распечатку:
[ { "name": "Estonia", "topLevelDomain": [ ".ee" ], "alpha2Code": "EE", "alpha3Code": "EST", "callingCodes": [ "372" ], "capital": "Tallinn",
Однако, если я пытаюсь изменить {{продукт, чтобы {{product.name}}, например (с и без трубы | json в конце, я получаю сообщение об ошибке, что он не может прочитать свойство 'name' undefined?
Я новичок в Angular, и я уверен, что это всего лишь проблема синтаксического анализа, с которой я сталкиваюсь. Я пробовал массу комбинаций.
Помощь?
Когда шаблон визуализации, 'product.name' не определено. Вы используете pipe '| json', чтобы преобразовать его в формат 'JSON', если он не поднимет вашу ошибку. Просто используйте pipe '| json' или place '* ngIf =" product "' решат проблему – eugene