react处理多次请求_react中render函数会被刷新多次,如何处理?

在componentDidMount函数中有个调用后台接口方法,并把获取的数据设置到state中,当在render方法中输出this.state.data时,前两次会输出一个空,最后一次才会有后台的数据。请问下如何让它不render多次?

代码如下:

componentDidMount() {

this.fetch();

}

fetch = (params = {}) => {

console.log('params:', params);

this.setState({ loading: true });

reqwest({

url: 'https://randomuser.me/api',

method: 'get',

data: {

results: 10,

...params,

},

type: 'json',

}).then(data => {

const pagination = { ...this.state.pagination };

// Read total count from server

// pagination.total = data.totalCount;

pagination.total = 200;

this.setState({

loading: false,

data: data.results,

pagination,

});

});

};

render() {

console.log(this.state.data);

return (

columns={columns}

rowKey={record => record.login.uuid}

dataSource={this.state.data}

pagination={this.state.pagination}

loading={this.state.loading}

onChange={this.handleTableChange}

/>

);

}

输出截图:

650b4ee2f5ee46c7ad967355839c4ebd.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值