我有以下代码:
ngOnInit() {
this.data = this.apollo.query({ query: ResidentQuery }).subscribe(({data, loading}) => {
this.data = data;
this.loading = loading;
});
if (!this.loading) {
// using this.data
}
}我希望在(!this.loading)处理数据之前加载数据。情况并非如此,因为加载是异步的。在使用这些数据之前,我如何等待数据被加载?
我正在使用阿波罗客户端进行graphql查询。ResidentQuery是一个包含graphql查询的字符串。
谢谢你的反馈!
发布于 2018-02-24 17:46:30
我不知道角是如何工作的,但我知道它在反应中是如何工作的,我知道两者是相似的。
在react中,您需要使用componentWillReceiveProps() (编辑: Now ),例如:
componentWillReceiveProps(newProps){
if(!newProps.query.loading){
this.setState({data: newProps.query.data})
}
}来自如何角度和反应生命周期是相似的的中介文章
基本上,道具将根据角度自动绑定,所以我假设setter和getter函数就是这个部分,它为您提供了一种生成复杂状态或变量的方法,就像在componentWillReceiveProps()中可以做的那样。
https://stackoverflow.com/questions/48009280
复制相似问题