Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何将json中的数据与;这是“道具”;反应_Reactjs - Fatal编程技术网

Reactjs 如何将json中的数据与;这是“道具”;反应

Reactjs 如何将json中的数据与;这是“道具”;反应,reactjs,Reactjs,我试图通过数据json动态创建Textfields,当我想为每个字段设置一个值和onChange函数时,就会出现问题 我试着用绳子,但没用 值={${this.state}。+${textfield.label}} this.state = { label1: "", label2 : "" }; value={this.state.${textfield.label}} this.state = { label1: "", label2 :

我试图通过数据json动态创建Textfields,当我想为每个字段设置一个值和onChange函数时,就会出现问题

我试着用绳子,但没用

值={
${this.state}。
+
${textfield.label}
}

 this.state = {     
  label1: "",
  label2 : ""     
};
value={
this.state.${textfield.label}
}

 this.state = {     
  label1: "",
  label2 : ""     
};
}

{textfields.map((textfield)=>{
返回(
this.setState({${textfield.label}`:e.target.value})
/>
)
})
}
问题在于价值和变化

我想 值={this.state.label1} 值={this.state.label2}

onChange={e=>this.setState({label1:e.target.value})} onChange={e=>this.setState({label2:e.target.value})}

我得到 值=[object].label1 值=[object].label2

或 value=“this.state.label1”但在texfield中作为字符串 value=“this.state.label1”但在texfield中作为字符串


onChange显示语法错误

您能像这样抛出一个名称吗

{textfields.map((textfield)=>{

返回(
this.setState({`e.target.name`:e.target.value})
/>
)
})
}

你能像这样给它起个名字吗

{textfields.map((textfield)=>{

返回(
this.setState({`e.target.name`:e.target.value})
/>
)
})
}

只需在花括号内使用普通JavaScript即可。像这样:

 value={this.state[textfield.label]}

只需在花括号内使用普通JavaScript即可。像这样:

 value={this.state[textfield.label]}

是,但react显示解析错误:第一个`from
e.target.name
yes出现意外标记,但react显示解析错误:第一个`from
e.target.name
value={this.state[textfield.label]}和onChange={e=>this.setState({[textfield.label]:e.target.value})出现意外标记,{this.state[textfield.label]}}和onChange={e=>this.setState({[textfield.label]:e.target.value})