Javascript Angular 2 Rxjs在服务器响应后创建操作
我是Angular2的新手(尤其是RxJs库的新手),下一步就要开始了。我的网站以注册页面开始。 完成注册表格后,我有了baseJavascript Angular 2 Rxjs在服务器响应后创建操作,javascript,angular,promise,rxjs,Javascript,Angular,Promise,Rxjs,我是Angular2的新手(尤其是RxJs库的新手),下一步就要开始了。我的网站以注册页面开始。 完成注册表格后,我有了baseservice.auth.tsmethod注册用法 registerUser(){ this.authService.registerUser(this.registrationForm.value) .subscribe((data) => { console.log(data);
service.auth.ts
method注册用法
registerUser(){
this.authService.registerUser(this.registrationForm.value)
.subscribe((data) => {
console.log(data);
})
//this line should apear after server response from backend
console.log('AFTER SERVER RESPONSE')
}
我收到了这样的回应
我在RxJs文档中阅读了一些关于flatMap
方法的内容,据称它是默认Promise
methodthen()
的替代方法,但我未能为我的案例创建实际实现flatMap
方法的代码工作实例
因此,问题是:我如何才能获得结果,以便在服务器响应后显示“服务器响应后”消息?(并非如前一屏幕截图所述)您应该等待异步任务完成。将
console.log('AFTER SERVER RESPONSE')
移动到subscribe
块中
registerUser() {
this.authService.registerUser(this.registrationForm.value)
.subscribe((data) => {
console.log(data);
//this line should apear after server response from backend
console.log('AFTER SERVER RESPONSE')
});
// anything written over here will execute before `registerUser()` returns data
console.log('THIS WILL PRINT BEFORE SERVER RESPONSE')
}