React中未定义的setState

时间:2019-12-09 00:10:12

标签: reactjs fetch state render setstate

我试图在前面的使用API​​中显示数据,但是在浏览器控制台中出现此错误状态,并且数据不显示:

未捕获(承诺)TypeError:无法读取未定义的属性“ setState”     评估时(tickets.jsx:190)

这就是我在render()中显示数据的方式:

com.google.android.packageinstaller

这是我前面的API函数:


 render(){
        var { items_tickets, dd_tickets, role, filter_tickets, all_tickets } = this.state;
        return(
 <table className="table table-striped table-dark table-hover">
                   <thead>
                       <tr>
                            <th> N° de Ticket </th> 
                            <th> Mes Gains  </th> 
                            <th> (Non) utilisé  </th> 
                       </tr>
                   </thead>
                   <tbody>
{
filter_tickets.length > 0 ? filter_tickets.map(item => {
                                console.log('filter tickets : ', filter_tickets)
                            const {numTicket, libelleGain, used} = item;
                            // console.log("items_tickets : ", items_tickets)
                            return  <tr key={numTicket}> 
                            <td>{numTicket}</td>
                                <td>{libelleGain}</td>
                                <td>{used === true ? "Utilisé" : "Non utilisé"}</td>
                                    </tr>
                            }) : "d"
                       } 
  </tbody>
                </table>
            </div>
        </div>
        )
    }

谢谢

1 个答案:

答案 0 :(得分:0)

方法1(轻松)

从以下位置更改声明:

filterallTickets () {

到箭头功能:

filterallTickets = () => {

方法2

在构造函数中,将函数绑定到this

constructor() {
  this.filterallTickets = this.filterallTickets.bind(this);
}