Я очень плохо знаком с Angular, и в настоящее время я изучаю Angular 6, последнюю версию Angular.
Здесь я пытаюсь оформить страницу моего блога, используя статьи, которые были получены сJSON и отображение их в 2 столбцах, как на рисунке ниже:

Число рядом с заголовком является индексом статьи в массиве статей.Легко увидеть проблему: индексы с 1 дублируются дважды.
Это мой код, пожалуйста, покажите мне, почему я не прав в деталях и как я могу это исправить.
BlogService:
import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
@Injectable({
providedIn: 'root'
})
export class BlogService {
constructor(private http: HttpClient) { }
getArticleList() {
return this.http.get('https://jsonplaceholder.typicode.com/posts');
}
}
ArticleListComponent:
import {Component, OnInit} из '@ angular / core';import {BlogService} из '../blog.service';
@Component({
selector: 'app-blog',
templateUrl: './article-list.component.html',
styleUrls: ['./article-list.component.css']
})
export class ArticleListComponent implements OnInit {
articles: Object;
constructor(private data: BlogService) { }
ngOnInit() {
this.data.getArticleList().subscribe(
data => this.articles = data
);
}
}
HTML-файл:
<div class="article-list-page">
<div class="container">
<h3>This is blog page</h3>
<p>The industry's top wizards, doctors, and other experts offer their best advice, research, how-tos,
and insights, all in the name of helping you level-up your SEO and online marketing skills. Looking for the YouMoz Blog? </p>
<span *ngFor="let index of articles; index as i">
<div style="display: table; border: 1px solid black">
<div class="posts-left col-md-6" style="display: table-row;">
<a>{{ articles[i].title }} -- {{i}}</a>
<p>{{ articles[i].body }}</p>
</div>
<div class="posts-right col-md-6" style="display: table-row;">
<a>{{ articles[i + 1].title }} -- {{i + 1}}</a>
<p>{{ articles[i + 1].body }}</p>
</div>
</div>
</span>
</div>
</div>