Reactjs 如何在react中添加键
我想做点什么Reactjs 如何在react中添加键,reactjs,Reactjs,我想做点什么 class Example exports React.Component{ state = { items = {}, id = 0, template = {"id":0, "itemName":""} } addItem = (name) => { let item = {...this.state.template,"id":this.state.id,"itemName":name };
class Example exports React.Component{
state = {
items = {},
id = 0,
template = {"id":0, "itemName":""}
}
addItem = (name) => {
let item = {...this.state.template,"id":this.state.id,"itemName":name };
this.setState({items["item0"]:{item}});
}
render()/*code*/
}
但是我无法使用setState:c向字典中添加关键字。请使用spread运算符包括现有项,然后在其关键字下添加新项:
setState({
项目:{
…项目,
“项目0”:项目
}
}
如果需要计算密钥,可以使用括号语法:
const itemId='bananas';
设定状态({
项目:{
…项目,
[项目ID]:项目//与“香蕉”等价:项目
}
}
或者使用数组:
setState({
项目:[
…项目,
项目
]
}
这是否回答了您的问题?是否有一种方法可以根据id更改键?例如`类示例导出React.Component{state={items={},id=0,template={“id”:0,“itemName”:“}}}addItem=(name)=>{let item={…this.state.template,“id”:this.state.id,“itemName”:name};this.setState({items[item${this.state.id}
]:{item}});}render()/*code*/}`yes。使用like{[someIdVar]:someValue}
更新了计算属性名示例的答案。