我有一个简单的Vue过滤器,它可以将数组的长度限制为n个元素。{{ array | limitArray(2) }}
现在我想在v-for
循环中使用它,如下所示:<li v-for="item in items | limitArray(3)">...</li>
但是这会引发错误,我如何在v-for
中使用过滤器呢?
编辑:可能不重要,但有问题的过滤器:
Vue.filter('limitArray', function (arr, length = 3) {
if (arr && arr.length) {
if (length == -1) {
return arr;
}
if (length > arr.length) {
return arr;
}
return arr.slice(0, length);
}
return null;
});
3条答案
按热度按时间yquaqz181#
您必须将过滤器作为方法调用:
但在Vue 3中删除了过滤器。请使用方法代替。
toiithl62#
您可以使用
method
代替filter
(特别是在Vue 3中):在你的方法中
一个二个一个一个
iszxjhcz3#
我认为你应该这样做: