我在尝试在v-for循环中按日期对数据数组进行排序时遇到麻烦。我尝试了orderBy,但没有成功。
这是简化的v-for循环:
<div v-for="article in articles">
<div class="article-date">{{ article.dateYear }}/{{ article.dateMonth }}</h1>
<h1>{{ article.title }}</h1>
<h3>{{ article.description }}</h3>
</div>
我的基本计算属性:
articles() {
return this.$store.state.articles;
}
每篇文章都有dateDay,dateMonth和dateYear,因此我想做的是date = article.dateYear + article.dateMonth + article.dateDay
,并将date变量与orderBy一起使用,但无法解决。
这是更好的方法吗?
谢谢您的时间!
答案 0 :(得分:1)
在文章助手中,首先对文章进行排序:
articles() {
const { articles } = this.$store.state;
articles.sort(function(a,b){
return new Date(b.date) - new Date(a.date);
});
return articles;
}