Я довольно новичок в angular 7, и у меня есть такой объект.
this.data = {
title:"mypage",
pageContent:{
fields:{
history:[{
sys:{},
fields:{
title:"my book",
description:"my description"
}
},
{
sys:{},
fields:{
title:"book1",
subtitle:"description1"
}
},
{
sys:{},
fields:{
title:"book2",
subtitle:"description3"
}
}]
}
}
}
В представлении у меня есть 3 раздела для отображения каждого элемента в массиве.
<div class="row">
<div class="row">
<!-- Display first item in the array -->
<h3 class="text-center">{{data.fields.title}}</h3>
<p class="our-history-text text-center">{{data.fields.description}}</p>
</div>
<!-- Second item in the array -->
<div class="our-history-text-small" [innerHTML]="data.fields.subtitle | markdownToHtml" spaLinkTransformer></div>
<!-- Third item in the array -->
<div class="our-history-text-small" [innerHTML]="data.fields.subtitle | markdownToHtml" spaLinkTransformer></div>
</div>
Мне было интересно, если: 1. Мне нужно использовать * ngFor в представлении перебирать массив. Если так, как я могу использовать индекс в представлении, чтобы просто отобразить указанные c элементы в списке. 2. Если мне нужно провести l oop через массив в компоненте, назначьте его отдельным переменным и используйте его в поле зрения. Например:
myHistory: Entry<any>;
this.myservice.fetchAll(locale)
.then(entries => {
this.myPage = entries.fields;
this.myHistory = this.myHistory.pageContent.fields.history[0];
}
Но я получаю сообщение об ошибке. Свойство pageContent не существует в типе Entry.
Может кто-нибудь помочь мне с решением. Спасибо