如何通过动态参数获取状态值?

时间:2019-05-21 13:42:03

标签: reactjs state

我正在尝试从状态中访问值,如下所示:

this.state = {
  provider: {
    NameFr: "",
    NameEn: ""
  }
}

我在HTML代码中有两个输入,一个输入为法语值,另一个输入为英语值。

我有一个呈现输入本身的函数:

const name = "Name" + ((lang === "en") ? "En" : "Fr");

return (
  <input
    maxlength={longTextboxLength} 
    cssClass="longTextbox" 
    name={name} 
    value={value}
    onChange={this.handleChange.bind(this)}
    readOnly={this.props.readonly} 
  />
)

我想要实现的是使用name常量并将其传递给类似this.state.provider.name的对象。但是,显然,它不起作用。

我还尝试将参数用作数组项this.state.provider[name],但它也不起作用。

我该如何实现?预先感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

糟糕,我没有正确更新状态。现在已修复,使用this.state.provider[name]