・こういったケースには、配列(リスト)変数の中にオブジェクトを格納し、そのオブジェクトに配列(リスト)を持たせ、それをループで表示するという形で対処できる。
使い方
・dataプロパティ内に、showpostを配置し、その中身を表示する例
<div v-for="tmp in showpost">
<h3>{{tmp.name}}</h3>
<div class="relatepost">
<div v-for="article in tmp.items" class="relatepost_item">
<span class="category_icon">{{article.category}}</span>
<a v-bind:href="article.id + '.php'" target="_blank">
{{article.title}}
</a>
</div>
</div>
<br>
</div>
// script内での処理
let retList = [];
// 配列にオブジェクトを格納
for (var i = 0; i < self.tag.length; i++) {
retList.push({
name: self.tag[i],
items: []
});
}
// オブジェクト内の配列に表示したいものを格納
self.kiji.forEach(p => {
for (var i = 0; i < self.tag.length; i++) {
if (p.tag.toLowerCase().indexOf(self.tag[i].toLowerCase()) > -1) {
retList[i].items.push(p);
}
}
});
self.showpost = retList;
参考
https://qiita.com/ykhirao/items/cf05e949e14aaac7f757