在ReactJS中,如何将动态变量传递给this.state的末尾?恩。 this.state。{变量}

时间:2017-10-31 21:38:32

标签: javascript reactjs

在ReactJS中,我想做以下事情:

在构造函数中:

this.state = {
  activeStep: 1,
  step1Data: {},
  step2Data: {},
  step3Data: {}
}

在一个函数中:

var step = 1;
var step1Data = this.state."step"+step+"Data";

2 个答案:

答案 0 :(得分:4)

您可以使用[]成员运算符,如下所示:

var step1Data = this.state["step" + step + "Data"];

obj.keyobj['key']

相同

因此,如果您将密钥存储在变量中,则可以像obj[variable]一样访问它(例如:使用var variable = 'key';它将与前两个示例相同)

答案 1 :(得分:1)

最好将数据存储在数组中。

this.state = {
    activeStep: 1,
    stepData: [{}, {}, {}],
}

然后在你的功能......

var step = 1;
var step1Data = this.state.stepData[step];