vue3中filterBy过滤器
时间: 2023-10-20 17:07:41 浏览: 245
Vue3不支持Filters过滤器的问题
在Vue3中,filterBy过滤器已经被移除了。取而代之的是使用computed属性来进行过滤。
在模板中,你可以使用v-for指令来迭代数据,并使用computed属性来对数据进行过滤。例如:
```
<template>
<div>
<input v-model="search" />
<ul>
<li v-for="item in filteredItems" :key="item.id">{{ item.name }}</li>
</ul>
</div>
</template>
<script>
import { ref, computed } from 'vue';
export default {
setup() {
const items = ref([
{ id: 1, name: 'Apple' },
{ id: 2, name: 'Banana' },
{ id: 3, name: 'Cherry' },
{ id: 4, name: 'Durian' },
]);
const search = ref('');
const filteredItems = computed(() => {
return items.value.filter(item => {
return item.name.toLowerCase().includes(search.value.toLowerCase());
});
});
return {
items,
search,
filteredItems,
};
},
};
</script>
```
在这个例子中,我们使用ref来创建items和search变量。然后,我们使用computed属性来创建filteredItems,它会根据search的值来过滤items。最后,我们在模板中使用v-for指令来迭代filteredItems。
阅读全文