在 Vue 中的 for 循环中过滤列表
Filter list while in for loop in Vue
我有这个列表,我必须在不同的 div 中显示列表中的 active
和那些 inactive
.
<v-ons-card
v-for="item in items.data"
:key="item.id"
> </v-ons-card>
项目来自这部分代码。
computed: mapState({
items: state => state.items.items
})
state.items
看起来像这样
const state = {
items: {
data: [],
},
};
我在想我能不能做到,
v-for="item in items.data.active"
有什么办法可以做到吗?
在 Vuex 中使用 getter 或计算 属性。
我想这就是您要找的:
computed: {
activeItems() {
return this.items.data.filter((x) => x.active);
},
inactiveItems() {
return this.items.data.filter((x) => !x.active);
},
},
<div>Active items:</div>
<v-ons-card
v-for="item in activeItems"
:key="item.id"
></v-ons-card>
<div>Inactive items:</div>
<v-ons-card
v-for="item in inactiveItems"
:key="item.id"
></v-ons-card>
我有这个列表,我必须在不同的 div 中显示列表中的 active
和那些 inactive
.
<v-ons-card
v-for="item in items.data"
:key="item.id"
> </v-ons-card>
项目来自这部分代码。
computed: mapState({
items: state => state.items.items
})
state.items
看起来像这样
const state = {
items: {
data: [],
},
};
我在想我能不能做到,
v-for="item in items.data.active"
有什么办法可以做到吗?
在 Vuex 中使用 getter 或计算 属性。
我想这就是您要找的:
computed: {
activeItems() {
return this.items.data.filter((x) => x.active);
},
inactiveItems() {
return this.items.data.filter((x) => !x.active);
},
},
<div>Active items:</div>
<v-ons-card
v-for="item in activeItems"
:key="item.id"
></v-ons-card>
<div>Inactive items:</div>
<v-ons-card
v-for="item in inactiveItems"
:key="item.id"
></v-ons-card>