【发布时间】:2019-11-10 11:43:12
【问题描述】:
我正在使用 javascript 的 .filter 函数通过它在 TypeMp3List 中的 ID 从这个对象数组中删除一个元素。格式是这样的:
在删除例如ID:33390 的 MP3 时,我想在进行过滤后得到的格式是这样的:
这是我目前构建的代码:
showDeleteConfirmation(value, id, index, thisHandler) {
confirm({
title: 'Voulez vous supprimer cette audio ?',
content: '',
okText: 'Oui, je confirme',
okType: 'danger',
cancelText: 'Non',
onOk() {
deleteMp3Request(id);
var { extraitMP3 } = thisHandler.state;
var array = [];
for (var key in extraitMP3) {
array.push(extraitMP3[key]);
}
console.log('array',array)
const result = array.map(d => ({
...d,
TypeMp3List:
Object.fromEntries(
Object.entries(d.TypeMp3List).filter(index => index !== id)
)
}))
console.log('result',result)
thisHandler.setState({result: result})
NotificationManager.success("le fichier audio est supprimé avec succès !", "");
},
onCancel() {
},
});
}
问题是在映射和过滤console.log(result) 之后给我的结果与console.log(array) 相同。看起来映射和过滤有问题,不知道到底是什么。任何帮助将不胜感激。
【问题讨论】:
-
@JackBashford Id 传入
-
idinshowDeleteConfirmation参数是什么意思?
标签: javascript arrays reactjs object ecmascript-6