接口写好了吗 2022-04-12 14:12 采纳率: 80.2%
浏览 301
已结题

vue数组内对象有对应id,如何删除其中一个,让所有id能重新排序

问题是这样的:我有一个题目,然后多个选项。我设定了这样的结构
这里adc代表id。value代表用户输入的值。我通过方法可以添加一条选项,会自动在后面加一条,并且id是D。我删除的时候如果删除最后一条D,然后再添加,那也是D。这样没问题,但是当我删除的不是最后一条,我直接删除前面的C的时候,再添加一条数据,他就会又加一个D上来,因为是根据他的长度来添加的。

我需要的是,我点击删除其中任何位置的选项,然后其他所有选项都会根据长度来,比如有三条就是顺序下来id是ABC,如果是2条就是AB这样的。请问有什么办法可以处理吗。

我有考虑删除或者添加的时候把选项数组清空从新添加的思路,但是这样也会导出用户写好了所有答案,然后不想要其中一个,一删其他的都没了。

domains: [
              {
                id: "A",
                value: "",
              },
              {
                id: "B",
                value: "",
              },
              {
                id: "C",
                value: "",
              },
            ],

  • 写回答

2条回答 默认 最新

  • 众生皆苦唯有我甜 2022-04-12 14:37
    关注
    
    let idArr = ['a', 'b', 'c', 'd', 'e'];
    let data = [{
        id: "a",
        value: "1",
    },
    {
        id: "b",
        value: "2",
    },
    {
        id: "c",
        value: "3",
    }]
    function delOne(arr, index) {
        arr.splice(index, 1).forEach((ele, key) => {
            ele.id = idArr[key]
        });
        return arr
    
    }
    console.log(delOne(data, 1))
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月20日
  • 已采纳回答 4月12日
  • 创建了问题 4月12日

悬赏问题

  • ¥20 电脑鼠标键盘不好使了
  • ¥15 求糕手!用matlab求解目标规划模型🙏
  • ¥15 画出的分类图不对,求解答一下
  • ¥20 springboot和springcloud版本问题
  • ¥15 ps2手柄控制树莓派小车
  • ¥30 C#:vsto powerpoint的外接程序
  • ¥30 stata将do文件代码转化为ado文件
  • ¥15 两个同维数组相比,不同位置、出现重复比无意义,而不同位置、不出现重复比,则有意义。把有意义的两个数组放入新的集合MK中。
  • ¥15 可以远程电脑安装nvm
  • ¥15 写一个可直接调用的函数,将32位有符号数转成另一个无符号的数