我试图在反向排序无序列表(VUEJS 2。x),但我似乎找不到任何过滤器的文件,像以前在VUE 1。x(类似于角度1做它)
例如:
<li v-for="message in messages | orderBy 'name' -1">
但那已经不管用了。
我在这里尝试使用计算属性:
computed: {
reverse: function() {
return this.messages.reverse();
}
}
哪种方式有效,但一旦通过页面上的表单提交新邮件,列表项不会保持反转。
目标是在任何时候保持列表项颠倒。
我试过将reverse函数附加到其他生命周期挂钩上,比如beforecreate和updated,但似乎没有任何效果。我错过了什么?
最佳答案
事实上,在VueJS2中过滤器已经消失了…相反,您可以使用computed properties作为您已经尝试过的:
<li v-for="message in sortedMessages">
然后:
computed: {
sortedMessages: function() {
return this.messages.slice().sort(function(message1, message2) {
var name1 = message1.name.toLowerCase();
var name2 = message2.name.toLowerCase();
if(name1 < name2) return 1;
if(name1 > name1) return -1;
return 0;
})
}
}
希望这有帮助!
关于javascript - 如何对李的反向排序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41772086/