gpt4 book ai didi

javascript - VueJS - 根据搜索值过滤列表中的元素

转载 作者:行者123 更新时间:2023-11-30 13:59:58 27 4
gpt4 key购买 nike

在我的页面中,我有一个元素列表,该列表是根据存储在组件中的局部变量构建的。我添加了一个用于搜索的输入文本,以便能够过滤和仅显示名称包含用户搜索的字符串的元素。

我从来没有看到使用以下代码刷新我的列表。我的错误在哪里?

模板

<input v-model="searchTextValue" v-on:keyup="onSearch" type="text" />

<div v-for="car in localCars" :key="car.id">
<span>{{ car.name }}</span>
</div>

JS

export default {
data() {
return {
localCars: [{name: "audi"}, {name:"fiat"}],
searchTextValue : ""
};
},
methods: {
onSearch() {
this.localCars.filter(function (car) {
return car.name.indexOf(this.searchTextValue) !== -1;
});
},
}
}

最佳答案

您的代码应如下所示:-

演示 Here

<template>
<div>
<input v-model="searchTerm" type="text">
<div></div>
<div v-for="car in filterByTerm" :key="car.id">
<span>{{ car.name }}</span>
</div>
</div>
</template>


<script>
export default {
name: "filter-demo",
data() {
return {
localCars: [{ name: "audi" }, { name: "fiat" }],
searchTerm: ""
};
},
computed: {
filterByTerm() {
return this.localCars.filter(car => {
return car.name.toLowerCase().includes(this.searchTerm);
});
}
},
methods: {}
};
</script>

关于javascript - VueJS - 根据搜索值过滤列表中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56478869/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com