報錯: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>