ReactJS状态取决于另一个状态

时间:2017-02-08 11:38:48

标签: reactjs

我正在尝试创建一个具有对象状态的组件,其中一个属性基本上是另一个状态,如下所示:

this.state = {
stateNameList : [],
fieldProperties = 
        [
            { type: FieldType.ComboBox, label: "State", fieldId: "state", source:this.state.stateNameList }
}

有办法吗?因为stateNameList将通过调用API服务填充在componentWillMount函数上。

1 个答案:

答案 0 :(得分:1)

如果要根据状态设置状态,则必须先创建this.state ,然后根据已创建的对象添加新密钥。这样的事情:

this.state = {
    stateNameList : [],
    fieldProperties: []
}

this.state.fieldProperties.push(
    { 
        type: FieldType.ComboBox, 
        label: "State", 
        fieldId: "state", 
        source: this.state.stateNameList //now it knows what this.state is
    }
)

除此之外,您使用fieldProperties运算符设置了=值,而不是:。而你没有关闭fieldProperties括号。