更新对象的拼接数组中的数据



所以,我已经拼接了数据,我想把它的对象从disabled = true更新到disabled = false。。我一直在寻找另一个答案,但找不到。。

如有任何建议,不胜感激。谢谢

这是我的下拉

const newDrop = [
{ key: "1", label: "Monthly GMV", sublabel: "Max.1" },
{ key: "2", label: "AOV", sublabel: "Max.1" },
{ key: "3", label: "Monthly Order", sublabel: "Max.1" },
{ key: "4", label: "Last Purchase", sublabel: "Max.1" },
{ key: "5", label: "Has Purchase" },
{ key: "6", label: "Has Purchase Spesific Product" },
{ key: "7", label: "Located In", sublabel: "Max.1" },
];

所选功能:当选择下拉菜单时,它将添加新的属性disabled:true

newInput({ key }) {
const {
changeFormAttribute,
form: { selectedDrop, newDrop, data },
} = this.props;
itemIndex = newDrop.map((itm) => {
let x = itm.key === key;
return x && itm.key !== "6" && itm.key !== "5" ? { ...itm, disabled: true } : { ...itm };
});

changeFormAttribute({
newDrop: itemIndex,
});
}

delete函数:这是onClick函数,当点击时,它应该拼接数据,并检查拼接的数据是否有disabled === true,将其更改为disabled:false。拼接的已经正常工作,但没有将属性更改为disabled = false

deleteInput(index) {
const {
changeFormAttribute,
form: { selectedDrop },
} = this.props;

let selected = selectedDrop || [];
selected.splice(index, 1).map((e) => {return e.disabled === true ? false:true })
changeFormAttribute({ selectedDrop: selected });
}

您的splice函数不返回元素。您可能需要将其更改为


selected.splice(index, 1).map((e) => {
e.disabled === true ? false:true
return e; 
})

最新更新