我有一个反应apollo graphql查询{..., loading: true}
,大约1秒后它将是loading: false
。我希望在new Promise
之后resolve()
到loading: false
。
我是否需要指定检查的频率?像每100毫秒?我使用while
循环吗?如果您可以编写代码我会非常感激,我已经尝试了几个小时而没有成功。
示例:
return new Promise((resolve, reject) => {
while (this.props.query.loading){
//rerun function
}
resolve(this.props.query.data)
}).then((data)=>{
//run my code
this.setState({data: data});
});
修改: 我的问题已经解决,,但问题没有得到解答。现在不需要回答,除非你认为它会帮助别人。
答案 0 :(得分:0)
使用componentWillReceiveProps()
解决了我的问题,虽然我不知道如何创建我在问题中提到的承诺,但似乎当我尝试使用时,this.props.query没有承诺{ {1}},虽然我可能做错了。