首页 > 解决方案 > 如何在javascript中将对象添加到特定的索引数组?

问题描述

我有这样的示例数据

let datas = [
  { no : '1', list: [ {val: '1'}, {val: '3'},{val: '4'}] },
  { no : '2', list: [ {valNew: '11'}, {valNew: '13'},{valNew: '14'}] }
]

他的期望是这样的

let datas = [
  { no : '1', list: [ {val: '1'}, { val: '2'}, { val: '3'},{val: '4'}] },
  { no : '2', list: [ {valNew: '11'}, {valNew: '13'},{valNew: '14'}] }
]

我试过这样

const handleDuplicate = (index, idx, item) => {
let data = [...datas.listInvoice]
      data[index] = {
        ...data[index] = {
          ...data[index],
          invoices: [...data[index].invoices.slice(idx+1, 0, item)]
        }
      }
     
      setDatas(prevState => {
        return {
          ...prevState,
          listInvoice: data
        }
      })
}

我想将对象添加到具有特定位置的数组中,但总是失败并且发票内的数组变为[],这种情况的解决方案是什么?

标签: javascriptarraysreactjs

解决方案


推荐阅读