【发布时间】:2019-01-10 06:46:31
【问题描述】:
嘿,我正在尝试从 Javascript 对象内的状态中删除键:值对。
当我在代码中硬编码键名时它可以工作,但是当我尝试使用函数调用中的变量时,它什么也不做。
有人可以帮帮我吗?
这是一个对象示例:
toppingsSelected: {
"Onion":"true",
"Mushrooms":"true",
}
这可行,硬编码:
deleteTopping = toppingName => {
const { Onion, ...withoutOnion } = toppingsSelected;
console.log(withoutOnion); // Returns object without onion
};
这不起作用:
deleteTopping = toppingName => {
const toppingName = "Onion"; // Variable gets passed in
const { toppingName, ...withoutOnion } = toppingsSelected;
console.log(withoutOnion); // Returns original object, no change made
};
所以我基本上是在尝试从 React 状态中删除一个键,但我对 Javascript 还是很陌生。
如何让 Javascript 知道 toppingName 是一个键?
【问题讨论】:
-
据我所知,您在破坏时不能使用动态键。因此,请寻求其他提供的答案。
标签: javascript reactjs object ecmascript-6