我的应用程序中有两张卡。
在我的第一张卡片上,这张卡片的索引为0,我的第二张卡片的指数为1。
我有一个叫listAtributos的变体,它有这样的结构:
0: {indexvariacaoatributo: 0, id: 5, tipovariacao: "Cor", valorvariacao: "Azul"}
1: {indexvariacaoatributo: 0, id: 7, tipovariacao: "Tamanho", valorvariacao: "P"}
2: {indexvariacaoatributo: 1, id: 6, tipovariacao: "Cor", valorvariacao: "Amarelo"}
3: {indexvariacaoatributo: 1, id: 7, tipovariacao: "Tamanho", valorvariacao: "P"}
在我的卡的索引和我的列表Atributst(indexvariacoatributo(的索引中有一个关系,通过这个关系,我的元素显示在我的卡片中。
示例:
在具有索引0的卡0中,将显示以下项目:
0: {indexvariacaoatributo: 0, id: 5, tipovariacao: "Cor", valorvariacao: "Azul"}
1: {indexvariacaoatributo: 0, id: 7, tipovariacao: "Tamanho", valorvariacao: "P"
在具有索引1的卡1中,将显示以下项目:
2: {indexvariacaoatributo: 1, id: 6, tipovariacao: "Cor", valorvariacao: "Amarelo"}
3: {indexvariacaoatributo: 1, id: 7, tipovariacao: "Tamanho", valorvariacao: "P"}
在任何时候,我都需要取出一张卡片。在这种情况下,我的listAtributos.indexvariaoatributo索引将出错。
我试图制作一个算法,使更新列表Atributos.indexvariaoatributo符合索引。
示例:
如果我排除卡0,则其中1的索引必须更新为0。
如果我排除了卡1,则其中0的索引变量必须更新为1。
我尝试了一些类似的东西:
for(let i=0;i<this.listAtributos.length;i++){
if(this.listAtributos[i].indexvariacaoatributo == index){
this.listAtributos[i].indexvariacaoatributo = index - 1;
}
}
但不起作用。我现在不考虑其他算法了。
有人能帮我吗?对不起我的英语。
让每张卡都有某种生成的号码,称之为cardId。然后不要将卡片索引存储在indexvariacoatributo中,而是存储相应的卡片ID。现在,对于listAtributos的每个元素,你都会得到cardId,然后过滤所有卡片,得到一张带有相应cardId的卡片。