報錯:Cannot read property 'map' of undefine
<ul className={styles.resul}>
{
this.state.isfalsepic.map((item) => {
return (
<li className={styles.resli} key={item.id}>
<img
className={styles.resimg}
alt="example"
src={`${this.state.imgpath}media/${item.user_info_price}`}
/>
</li>
);
})}
</ul>
原因:調用map的對象是 undefined,初始化第一次渲染的時候異步數據返回之前list是undefined。
解決方法:對list作判斷,異步ajax返回數據list取到值后再渲染組件。
<ul className={styles.resul}>
{this.state.isfalsepic &&
this.state.isfalsepic.map((item) => {
return (
<li className={styles.resli} key={item.id}>
<img
className={styles.resimg}
alt="example"
src={`${this.state.imgpath}media/${item.user_info_price}`}
/>
</li>
);
})}
</ul>