[英]React.js - js - add two strings and use this like variable
I want to get step property from state dynamically. 我想动态地从状态获取step属性。
That loop generates input fields on page depending on numberOfSteps number in state 该循环根据状态中的numberOfSteps数在页面上生成输入字段
makeInputs = () => {
let steps = [];
for (let i = 1; i <= this.state.numberOfSteps; i++) {
steps.push(
<input onChange={this.inputChangeHandler} name={"step" + i} />
);
}
return steps;
};
I set dynamically state names 我动态设置状态名称
inputChangeHandler = e => {
this.setState({
[e.target.name]: e.target.value
});
};
Know I want to send this values with fetch do db, my problem is that i cannot concat variable names, I have tried: 知道我想使用fetch do db发送此值,我的问题是我无法连接变量名,我已经尝试过:
this[this.state.step + i]
or eval function but nothing works... 或评估功能,但无济于事...
My variable should be generated like this: 我的变量应该像这样生成:
this.state.step1
this.state.step2
this.state.step3
form 形成
let steps = [];
for (let i = 1; i <= this.state.numberOfSteps; i++) {
let stepObj = {
id: i,
name: eval('this.state.step' + i),
description: "hejo"
};
steps.push(stepObj);
}
好像您想这样做:
this.state[`step${i}`]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.