#angular #angular6
#angular #angular6
Вопрос:
Вот мой stackblitz https://stackblitz.com/edit/angular-vj4llg
Для печати вложенных значений массива я использую канал значений ключей
<p>Use keyvalue pipe</p>
<ul *ngFor="let stdObj of student">
<li>ID : {{stdObj.id}} Name : {{stdObj.name}}
<ng-container *ngFor="let test of stdObj?.value | keyvalue">
{{test.key}} : {{test.value}}
</ng-container>
</li>
</ul>
В typescript
this.student = [
{
id:123,
name: "Test",
value:["{pass: true,verified: true}"]
},
{
id:435,
name:"Test12",
value:["{pass: false, verified: true}"]
}
]
Ожидаемый вывод как
ID : 123 Name : Test pass : true verified : true
Ответ №1:
В настоящее время, по вашему определению, value key содержит массив string: [«{…}»], поэтому вывод для него не будет показывать то, что вы ожидали; вместо этого он будет выводить значение индекса 0 в качестве значения ‘key’ для первого элемента, а «{…}’ в качестве его значения.
Итак, чтобы получить то, что вы ожидали, переопределите значение, как показано ниже:
value: {pass: true,verified: true}
Комментарии:
1. то, что вы сказали, правильно, но как преобразовать ответ REST API