Firebase http post后未调用Ionic rxjs管道函数
我用的是离子5 当我尝试使用post连接到firebase并获取响应数据,然后使用管道和水龙头处理响应时,它就不起作用了。日志没有打印 但是当我用subscribe替换管道时,它工作正常,并且可以正确地查看日志 请参阅下面的工作和非工作代码 有人能帮我解决这个问题吗。谢谢你的帮助 工作代码 非工作代码Firebase http post后未调用Ionic rxjs管道函数,firebase,ionic-framework,rxjs,rxjs6,Firebase,Ionic Framework,Rxjs,Rxjs6,我用的是离子5 当我尝试使用post连接到firebase并获取响应数据,然后使用管道和水龙头处理响应时,它就不起作用了。日志没有打印 但是当我用subscribe替换管道时,它工作正常,并且可以正确地查看日志 请参阅下面的工作和非工作代码 有人能帮我解决这个问题吗。谢谢你的帮助 工作代码 非工作代码 如注释中所述,您必须调用方法 下面是一段代码,它再现了您的案例,并提供了提到的解决方案 常量exampleObservable1=rxjs.of[{}]; 常量exampleObservable
如注释中所述,您必须调用方法 下面是一段代码,它再现了您的案例,并提供了提到的解决方案 常量exampleObservable1=rxjs.of[{}]; 常量exampleObservable2=rxjs.of[{}]; 常量exampleObservable3=rxjs.of[{}]; console.log“工作示例”; 示例Observable1.subscriberesDate=>{ console.logresDate; }; console.log“不工作示例”; 例2.管道 rxjs.operators.tapresData=>{ console.logresData; } 控制台。记录“建议”; 例3.管道 rxjs.operators.tapresData=>{ console.log'tap',resData; }.subscriberesDate=>{ console.log'subscription',resDate; };
您必须订阅以执行observable问题的更详细一点:如果您有0个订阅方侦听您的observable,那么您的observable将获得发出的值,但它不会将其推入管道。这意味着:0订阅===未执行任何管道操作。感谢您的命令。你能告诉我如何将订户添加到observable中,这样它就可以将值推送到管道中。谢谢你,这一切都如期而至。这是我的ionic代码返回This.http.post,{…newPlace,id:null}.pipe-tapresData=>{console.logD+resData;}.subscriberesData=>{console.logData in Subscribe:+resData};
return this.http.post("https://project-name.firebaseio.com/offered-places.json", {
...newPlace,
id: null
}).subscribe(resDate => {
console.log(resDate);
});
return this.http.post("https://project-name.firebaseio.com/offered-places.json", {
...newPlace,
id: null
}).pipe(
tap(resData => {
console.log(resData);
})
);