我正在尝试创建一个具有某些属性的类,第二个属性取决于第一个属性的值,但我想对其进行初始化。 因此,我想在此示例中仅包括...以模拟我的组件调用。
constructor(props){
super(props);
this.state={
Section:sectionsData.filter(function(section){return section.id=="id"}),
questions : this.state.Section[0].questions.map(...)
}
我收到“无法读取未定义的属性'Section'”
我已经尝试像这样的类成员一样使用section值
this.Section[0]
但是也没有用。
以及如何使用this.setState()更新这些属性的值
答案 0 :(得分:1)
this.state
尚未设置。使用这个:
constructor(props){
super(props);
const sections = sectionsData.filter(function(section){return section.id=="id"});
this.state={
Section: sections,
questions : sections[0].questions.map(...)
}
}
您可能还想检查部分的长度。