0
私はVuejs 2アプリでasyncComputedを使用しています。私はAPIからフェッチしている項目のリストをフィルタリングする必要があります。Vuejsで非同期計算データをフィルタリングする方法
これは私がこれまで持っているものです。
このような状況で<template>
<div class="items">
<input type="text" v-model="searchKey">
<li v-for="item in items">
<span>{{item.name}}</span>
</li>
</div>
</template>
<script>
import Items from '@/api/items';
export default {
name: 'items',
data: {
searchKey: ''
}
asyncComputed: {
items: {
async get() {
const items = await Items.getAll();
return items.data;
},
default: []
}
},
methods: {},
components: {}
}
</script>
、は、パイプ演算子でフィルタを使用することが可能である、または私は完全に新しいフィルタされたリストと使用を作成する必要があります代わりに、次のようになります。
computed: {
filteredItems: function() {
return this.items.filter((item) => item.name.toLowerCase().includes(this.searchKey.toLowerCase());
}
}
また、フィルタリングされたリストを新たに作成する必要がある場合は、どうすれば非同期データでそれを行うことができますか?