我正在尝试创建一个具有对象状态的组件,其中一个属性基本上是另一个状态,如下所示:
this.state = {
stateNameList : [],
fieldProperties =
[
{ type: FieldType.ComboBox, label: "State", fieldId: "state", source:this.state.stateNameList }
}
有办法吗?因为stateNameList将通过调用API服务填充在componentWillMount函数上。
答案 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
括号。