Angular material 从angular mat对话框返回布尔值并等待afterclosed执行任务
我有一个卡住的场景。详情如下: 我有几个组件-Comp_A、Comp_B等,它们需要调用服务来进行一些计算,如:Angular material 从angular mat对话框返回布尔值并等待afterclosed执行任务,angular-material,angular6,angular8,angular9,angular10,Angular Material,Angular6,Angular8,Angular9,Angular10,我有一个卡住的场景。详情如下: 我有几个组件-Comp_A、Comp_B等,它们需要调用服务来进行一些计算,如: Comp(A): Service.getStatus().subscribe( (isYesOrNo)=>{ //do some action according to Component if(isYesOrNo) //do something else // do something } 服务: function 1 : getStatus() : Observable&
Comp(A): Service.getStatus().subscribe(
(isYesOrNo)=>{
//do some action according to Component
if(isYesOrNo) //do something
else // do something
}
服务:
function 1 : getStatus() : Observable<boolean>{
httpService.getData().map((responseOfApi)=>{
if(!responseOfApi) return false
else return showDialogAndWaitForOk()
})
}
function 2: showDialogAndWaitForOk() {
dialog.open(header, msg).afterClosed().subscribe(()=>{return false})
}
函数1:getStatus():可观察{
httpService.getData().map((responseOfApi)=>{
如果(!responseOfApi)返回false
否则返回showDialogAndWaitForOk()
})
}
函数2:showDialogAndWaitForOk(){
dialog.open(header,msg).afterClosed().subscribe(()=>{return false})
}
问题:showDialogAndWaitForOk是一个订阅,即使它返回,也将返回订阅,但getStatus只需要返回布尔值
例如:
提示:点击点击点击api按钮-案例3从未更新-这就是问题所在-我想在案例3中显示对话框,然后更新案例3文本
你知道怎么做到吗
提前谢谢