在我的reactjs应用程序中,我将对象数组传递给我的组件。在该组件内部我使用该对象来映射和创建多个对象,但问题是我得到错误
无法读取未定义的属性“map”
这是我的代码,我在父母的状态中声明我的对象
this.state = EditMultiObject: [
{
id: 0,
Title: ""
},
{
id: 0,
Title: ""
}
]
};
<Form1
EditMultiObject={this.EditMultiObject} />
在我的Form1组件中,这是我的代码
const {
EditMultiObject
} = props;
return (
{EditMultiObject.map((counter, key) => (
<SubFormEditCom
key={key}
/>
))}
)
我弄错了吗?
我想你可以尝试将其更改为:
this.state = {
myobjects: [{ id: 0, Title: ' '},{id: 1, Title: ' '}],
};
<Form1 EditMultiObject={this.state.myobjects} />
应该没问题
请更正代码
this.state = {
EditMultiObject: [
{
id: 0,
Title: "title1"
},
{
id: 1,
Title: "title2"
}
]
};
<Form1 EditMultiObject={this.state.EditMultiObject} />
然后在Form1组件中
render(){
const {EditMultiObject}=this.props;
return (
{ EditMultiObject && EditMultiObject.length > 0 ? // check length of an array then use map
EditMultiObject.map((counter, key) => (
<SubFormEditCom
key={key}
/> : null}
))}
)