如何从传入的参数创建对象?

  • 本文关键字:参数 创建对象 reactjs
  • 更新时间 :
  • 英文 :


我试图从从函数传入的值创建一个新对象,然而,当我尝试这样做时-我得到了文本变量名称进入状态。例如:

updateReactions = (foods, reaction) => {
foods.forEach((food) => {
if (!this.state.reactions[food]) {
let newReaction = { food: { reaction : 1 } };
});
};

如果我调用updateReactions(banana, happy)它会创建一个对象创建

{ food: { reaction : 1 } } ;

这输出到一个新的对象字面上显示食物:反应:1,但我想让它创建

{ banana: { happy : 1 } }

谢谢!

可以这样使用对象键:

let newReaction = { [food]: { [reaction] : 1 } };

将引用传递的参数。
在提供的示例中,您告诉变量newReaction它必须是一个具有food对象的对象,该对象必须具有值为1的reaction key,您没有引用实际的函数参数:)

let newReaction = {food: {reaction: 1}};

:let newReaction = {[food]: {[reaction]: 1}};

相关内容

  • 没有找到相关文章

最新更新