使JS Promise在返回值后解析

时间:2018-02-24 17:14:29

标签: javascript react-apollo

我有一个反应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});
});

修改: 我的问题已经解决,,但问题没有得到解答。现在不需要回答,除非你认为它会帮助别人。

1 个答案:

答案 0 :(得分:0)

使用componentWillReceiveProps()解决了我的问题,虽然我不知道如何创建我在问题中提到的承诺,但似乎当我尝试使用时,this.props.query没有承诺{ {1}},虽然我可能做错了。