javascript - 如何使用 JS 传播剩余破坏删除嵌套属性?
问题描述
尝试使用传播运算符其余破坏删除多个属性,因此 drugName 被删除但我有嵌套对象mailPrice.copayEmployer
没有被破坏知道什么是错误的实现吗?
main.js
const transformedResponse = transformResponse(response);
const loggerResponse = transformedResponse.map(
({drugName, mailPrice.copayEmployer, ...rest}) => rest
);
转换响应
[{
"isBrand": true,
"drugName": "Lipitor",
"drugStrength": "80 mg",
"drugForm": "Tablet",
"mailPrice": {
"copayEmployer": 0
}
}, {
"isBrand": true,
"drugName": "Metformin",
"drugStrength": "500 mg",
"drugForm": "Tablet",
"mailPrice": {
"copayEmployer": 50
}
}
]
解决方案
我不认为你可以用一个变量来做到这一点。您需要在对象内部有一个嵌套...rest
变量mailPrice
,然后您必须重建该对象。
const transformedResponse = [{
"isBrand": true,
"drugName": "Lipitor",
"drugStrength": "80 mg",
"drugForm": "Tablet",
"mailPrice": {
"copayEmployer": 0,
}
}, {
"isBrand": true,
"drugName": "Metformin",
"drugStrength": "500 mg",
"drugForm": "Tablet",
"mailPrice": {
"copayEmployer": 50
}
}];
const loggerResponse = transformedResponse.map(
({
drugName,
mailPrice: { copayEmployer, ...mailPriceRest},
...rest
}) => ({mailPrice: {...mailPriceRest}, ...rest})
);
console.log(loggerResponse);
推荐阅读
- hyperledger-fabric - 无法调用链码
- html - 有没有办法改变 django/html 中的日期格式?
- python - pyparsing如何访问解析结果中的重复模式
- mapserver - TileCache 和 MapServer 图层类型 - 如何指定 MapServer URL?
- reactjs - 如何在反应中用数组中的数据库数据替换硬编码值
- sql - 用 cosmos 在字典对象内部查询?
- asp.net-core - ASP Net Core 在 UseSpa 中间件中应用中间件
- node.js - 在 discord.js 中执行命令时,Discord Bot 崩溃
- javascript - 如何检查视口是否已达到某个 HTML 元素?
- tensorflow - 加载模型 BertClassifier 模型时输入张量 ValueError