【发布时间】:2021-12-31 17:04:10
【问题描述】:
我有一个对象,其中包含我想根据类别显示的数据对。我相信这与嵌套的 v-for 循环有关,但我无法找出正确的解决方法。
categoryArray = {stage 1, red}, {stage 1, blue}, {stage 2, orange}, {stage 3, brown}, {stage 2, green}
所需的显示: 第一阶段:红色、蓝色 第 2 阶段:橙色 第三阶段:棕色
我还没有可用的代码。我的策略是创建一组独特的阶段,用它来显示阶段,但我不知道如何迭代阶段内的项目。
获得阶段:
let stagesArray = [];
categoryArray.value.forEach((entry, index) => {
stagesArray.push(entry.stageNumber);
});
//creating array of unique stages
uniqueRooms.value = [...new Set(stagesArray)];
})
以上方法可以得到唯一的房间数组。
<template>
<div v-for="(stage, index) in uniqueRooms" :key="index">
{{ room }}
<div v-for="(color, index) in filterStages" :key="index">
{{ color }}
</div>
</div>
</template>
<script>
//this is a mess and I don't know where to go.
const filterStages = computed(function (stage) {
return stagesUnique.value.forEach((stageNumber) => {
return categoriesArray.value.filter((color) => color.stage
=== stageNumber);
});
</script>
我在滑雪。我只需要一些关于如何循环遍历主类别(阶段)的线索,并使用唯一值,然后显示该类别中的所有匹配颜色。
这似乎非常接近,但我无法找出从中获得独特阶段的方法。 Nested loop in Vue
【问题讨论】:
标签: javascript vue.js quasar