有时,我们想要显示一个数组过滤或排序后(filtered or sorted)的副本,而不是实际改变或重置原始数据。在这种情况下,可以创建一个返回过滤或排序数组的计算属性。
例如:
<li v-for="n in evenNumbers">{{ n }}
</li>
|
data: {
numbers: [
1,
2,
3,
4,
5 ]
},
computed: {
evenNumbers:
function () {
return
this.numbers.filter(
function (number) {
return number %
2 ===
0
})
}
}
|
在计算属性不适用的情况下(例如,在嵌套的 v-for 循环内),可以使用一个 method 方法:
<li v-for="n in even(numbers)">{{ n }}
</li>
|
data: {
numbers: [
1,
2,
3,
4,
5 ]
},
methods: {
even:
function (numbers) {
return numbers.filter(
function (number) {
return number %
2 ===
0
})
}
}
|