Javascript Angular 2 Rxjs在服务器响应后创建操作

Javascript 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);

我是Angular2的新手(尤其是RxJs库的新手),下一步就要开始了。我的网站以注册页面开始。 完成注册表格后,我有了base
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
method
then()
的替代方法,但我未能为我的案例创建实际实现
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')
}