我想传递一个字符串作为参数来完成 this.state 并构建 HTML。我在 render() 下方和 return 上方创建了一个箭头函数
const createHtml = (name, stateProperty) => {
return (
<h1>{name}</h1>
<p>{this.state.stateProperty+'_x'}</p>
<p>{this.state.stateProperty+'_y'}</p>
)
}
createHtml('Jon', 'company')
// the result should be
//<h1>{Jon}</h1>
//<p>{this.state.company_x}
我尝试了不同的变体,但没有任何效果或出现“无法读取属性”
<p>{this.state.${statePropety}+'x'}</p>
最佳答案
{}
block 的内容是正则 Javascript 表达式。
因此,您必须将它们编写为常规 Javascript,而不是 JSX。
您想要this.state[stateProperty + 'x']
。
关于javascript - 如何传递字符串作为参数并将其附加到 REACT 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51504568/