1 回答

TA貢獻1796條經驗 獲得超4個贊
這似乎是計算屬性的完美用例。我不太明白問題的一些細節(例如,研討會的排序依據是什么?)但下面的一般方法應該可行。為清楚起見,它使用了多個計算屬性,但如果需要,可以將它們組合起來。
computed: {
seminarsWithDistance() {
return this.seminars.forEach(seminar => {
seminar.events.forEach(event => {
event.distance = calcDist(/*...*/);
});
});
},
seminarsWithSortedEvents() {
return this.seminarsWithDistance.forEach(seminar => {
seminar.events.sort((a, b) => a.distance - b.distance);
});
},
sortedSeminars() {
return this.seminarsWithSortedEvents.sort((a, b) => {
/* some compare function for two seminars a and b */
});
}
}
那么這只是在模板中使用計算屬性的問題
<ol v-for="seminar in sortedSeminars">
添加回答
舉報