在VueJS中按属性排序对象列表

时间:2017-08-21 02:10:52

标签: vue.js vuejs2

我刚刚开始学习VueJS 2,我遇到的问题就越多。

我的想法是我有一个对象数组的示例问题,我想通过“votes”属性对数组进行排序,可以为每个单独的元素动态更新。我想动态地对我的列表进行排序。因此,问题是如何在不做奇怪代码的情况下做到这一点。

在角度你会做类似

的事情
for candidate in candidates | orderBy: 'votes'

但是在这里,我只能像

那样
v-for="(value, index, key) in sorted_candidates"

在.js中我会有

 computed : {
      sorted_candidates() {
          return this.candidates.sort((a, b) => { return b.votes - a.votes;});
      }
  }

所以我的问题是,如果有更优雅的方法来解决这个问题? 注意:我正在对象属性进行排序。

1 个答案:

答案 0 :(得分:4)

这已经是一个简单的解决方案了,在Vue1中你仍然可以使用OrderBy但是在Vue2中他们建议您选择当前的解决方案,你可以参考here