javascript - 如何使用 reactjs 从对象中删除数组
问题描述
我的目标是从对象中删除一个数组 []。我无法弄清楚如何从对象中删除特定数组。谁能帮我解决这个问题?
这是以下对象:
experience: [
{
organisation: "",
id: "",
from: "",
to: "",
skills: []
}
]
Experience
数组有一个对象,它可能有多个对象。
experience: [
{
organisation: "",
id: "",
from: "",
to: "",
skills: []
},
{
organisationName: "",
id: "",
from: "",
to: "",
skills: []
}
]
我想skills
从每个对象中删除数组。
我已经尝试过这种方式,但它显示未定义。
let skillsArray = this.state.experiences.forEach((item) => item.skills! == Array.isArray([]))
谁能帮我解决这个问题?
解决方案
映射experience
数组,解构skills
属性,并使用 rest 语法收集对象中的其余属性,并返回它:
const state = {
experience: [{
organisation: "",
id: "",
from: "",
to: "",
skills: []
}]
};
const newState = {
...state,
experience: state.experience.map(
({ skills, ...rest }) => rest
)
};
console.log(newState);
推荐阅读
- python - Cron 作业在气流中的错误日期运行
- data-science - 数据科学项目中关于预测房价的数据选择
- javascript - 我正在尝试添加仅显示在某个部分的评论区,但出现错误:无法读取 null 的属性“addEventListener”
- python - 如何在导入中模拟导入
- javascript - 在 Tensorflow.js 中计算人脸的 Z 旋转
- visual-studio - 如何在 sln 中声明一个变量并在同一个 sln 文件中使用它?
- python - 如何计算熊猫日期一年内的日期数
- c# - 如何将数据绑定到 xamarin 表单中的可绑定属性
- weblogic - Xstream jar 在 Dev Server 上工作,但在 QA 服务器上不工作
- sql - SQL 帮助 - if then else(匹配一个条件,否则匹配另一个条件)