Javascript 承诺在componentDidMount中不起作用
我不熟悉Javascript 承诺在componentDidMount中不起作用,javascript,reactjs,q,Javascript,Reactjs,Q,我不熟悉React.js。在componentDidMount函数中,我使用q模块并行调用4个函数。在每个函数中,我都在制作API。一旦我得到所有4个服务的响应,我想再触发一个函数。为此,我编写了以下逻辑 var q=require("q"); componentDidMount: function () { var self=this; this.setState({loader:true}); q.all([this.getSegmentInfo(),this.ge
React.js
。在componentDidMount
函数中,我使用q
模块并行调用4个函数。在每个函数中,我都在制作API
。一旦我得到所有4个服务的响应,我想再触发一个函数。为此,我编写了以下逻辑
var q=require("q");
componentDidMount: function () {
var self=this;
this.setState({loader:true});
q.all([this.getSegmentInfo(),this.getSignedUrl(),this.getOverrallMyntraMetricInfo(),this.getSegmentMetricInfo()]).then(
function(result){
self.makeDataForMetrics();
},function(error){
utils.toggleMessage(true,"Sorry Services are failed.. Try Again","verror");
}
);
}
问题是,在我得到所有服务部门的回复后。依赖回调未触发
所有并行函数看起来像
getSignedUrl:function(){
var promiseInfo1=q.defer();
//Making service using Ajax
return promiseInfo1.promise;
}
谁能帮助我,为什么依赖函数没有触发
谢谢。您正在解决这些承诺吗?我假设不是。你说的“解决”是什么意思?你能用示例代码展示一下吗?承诺是未来价值的容器。承诺要么必须以未来价值来解决,要么因错误而被拒绝。如果您对承诺不太熟悉,我建议您看一看。@FelixKling我已经在
中解析了返回承诺,然后在中进行了两次回调。1代表成功案例,另一个代表错误案例。。那么
不能解决承诺。它允许您在承诺解决后获得价值。为什么不发布Ajax调用的代码呢?您是否正在解决承诺?我假设不是。你说的“解决”是什么意思?你能用示例代码展示一下吗?承诺是未来价值的容器。承诺要么必须以未来价值来解决,要么因错误而被拒绝。如果您对承诺不太熟悉,我建议您看一看。@FelixKling我已经在中解析了返回承诺,然后在中进行了两次回调。1代表成功案例,另一个代表错误案例。。那么
不能解决承诺。它允许您在承诺解决后获得价值。为什么不发布Ajax调用的代码?