Javascript将uniqueId()设置为数组键
这应该是一个简单的答案,可能是我的语法不正确,因为我是ReactJS新手。我想分配一个唯一的id作为密钥 这会引发一个错误:Javascript将uniqueId()设置为数组键,javascript,json,Javascript,Json,这应该是一个简单的答案,可能是我的语法不正确,因为我是ReactJS新手。我想分配一个唯一的id作为密钥 这会引发一个错误: rows:{ uniqueId() : { name:"Kitchen Remodel", value:20100 }, uniqueId() : { name:"Basement Remodel", value:8300 } } 这不是吗?请解释一下 rows:{ 143434 : { name:"Kitchen Remodel", value:20100
rows:{
uniqueId() : { name:"Kitchen Remodel", value:20100 },
uniqueId() : { name:"Basement Remodel", value:8300 }
}
这不是吗?请解释一下
rows:{
143434 : { name:"Kitchen Remodel", value:20100 },
984578 : { name:"Basement Remodel", value:8300 }
}
谢谢 当您声明这样的对象时,无法计算左侧 您可能需要像下面这样进行声明/分配
var row = {};
row[unique_id()] = { name:"Kitchen Remodel", value:20100 };
row[unique_id()] = { name:"Basement Remodel", value:8300 };
在中,可以对属性名称使用函数调用或变量,如下所示:
rows:{
[uniqueId()] : { name:"Kitchen Remodel", value:20100 },
[uniqueId()] : { name:"Basement Remodel", value:8300 }
}
我懂了。我不知道它不能被评估,这是完全有道理的。谢谢你的解释。这更多的是一种JS(语言)现象,而不是React(库)。您可能需要编辑/更新您的问题。我不确定这是否与uniqueId()函数有关。对象中的对象数组是什么?您可以使用
[uniqueId()]
使您的示例在新的和现代的JS中工作,这样就可以计算密钥的名称,但我并不真正理解您的目标是什么。这个问题似乎不是ReactJS所特有的,这里似乎已经有了一些答案:Candy谢谢,这个问题似乎很中肯。我以为有语法问题。我正在使用ES6,这是一个很好的解决方案。