gpt4 book ai didi

javascript - Vue.js 2 : How to filter array without mutation?

转载 作者:行者123 更新时间:2023-12-01 03:00:13 24 4
gpt4 key购买 nike

我有一个非常简单的 Laravel/Vue js 网站,我有一个我想要过滤的产品列表。

const app = new Vue({
el: '#main-content',
data: {
forfaits: window.forfaits,
},
methods: {
filterData: function (val) {
console.log(val)
this.forfaits = this.forfaits.filter(item => {
return item.internet >=val[0] && item.internet <= val[1] ;
});
return this.forfaits;

}

HTML

 <div class="product-item offre" v-for="forfait in forfaits">
.....
.....
.....

在这种情况下它可以工作,但原始产品数组(forfaits)发生了变化。如何在不改变原始值的情况下进行过滤?

最佳答案

您想要有两个属性:

  1. 包含所有未过滤项目的真实来源属性,用户界面永远不会使用该属性。
  2. 具有要显示的实际列表的计算机属性,如果没有过滤器,则随时返回完整列表;如果有过滤器,则返回过滤后的列表。这就是您将 UI 绑定(bind)到的内容。

你不需要任何方法;计算属性将随着过滤器的更改而自动更新。

关于javascript - Vue.js 2 : How to filter array without mutation?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46475778/

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