如何同步Angular2 http get?

allcommands.io

我理解使用Observable我可以在请求完成后执行一个方法,但是我如何才能等到http get完成并在ng2 http中使用返回响应?

getAllUser(): Array<UserDTO> {
    this.value = new Array<UserDTO>();
    this.http.get("MY_URL")
                    .map(res => res.json())
                    .subscribe(
                        data => this.value = data,
                        err => console.log(err),
                        () => console.log("Completed")
    );

    return this.value;
} 

返回时,“值”将为null,因为get是异步的。

尚德马尼

您不应尝试使http调用行为同步。从来没有一个好主意。

getAllUser实现之前,它应该从函数中返回一个可观察到的值,并且调用代码应该进行订阅,而不是在方法本身内部创建订阅。

就像是

getAllUser(): Observable<UserDTO> {
        return this.http.get("MY_URL")
                        .map(res => res.json());
} 

在调用代码时,您应该订阅并做任何您想做的事情。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Angular2 HTTP同步

来自分类Dev

Angular2 http GET与身体?

来自分类Dev

Angular2:动态同步http请求

来自分类Dev

同步http post angular2

来自分类Dev

angular2如何在额外的变量中存储来自http.get的响应头数据?

来自分类Dev

Angular2:如何访问使用Http.get检索的对象数组

来自分类Dev

使用angular2在http.get中的绝对URL

来自分类Dev

Angular2/4 http.get 嵌套访问“this”

来自分类Dev

带有RXJS Observable TypeError的Angular2 Http:this.http.get(...)。map(...)。catch不是函数

来自分类Dev

带有RXJS Observable TypeError的Angular2 Http:this.http.get(...)。map(...)。catch不是函数

来自分类Dev

Angular 2 HTTP GET等效于Angular HTTP GET

来自分类Dev

$ http.get同步AngularJS

来自分类Dev

Angular2 / Ionic2:在侦听器中执行$ http.get

来自分类Dev

Angular2将参数传递到Web服务http GET

来自分类Dev

Angular2模板尝试在从http.get返回的值之前呈现值

来自分类Dev

Angular2 HTTP GET-将响应转换为完整对象

来自分类Dev

带有标头的Angular2 http get请求失败

来自分类Dev

构造函数中的Angular2 http.get看不到'this'

来自分类Dev

Angular2 http.get飞行前检查问题

来自分类Dev

Angular2中的http.get()函数在哪里定义?

来自分类Dev

Angular2将参数传递到Web服务http GET

来自分类Dev

Angular 2 http.get和params

来自分类Dev

http get期间的Angular 2运行界面

来自分类Dev

Tumblr API Angular $http GET

来自分类Dev

Angular2 Http错误

来自分类Dev

Angular2 Http与HTTP_PROVIDERS

来自分类Dev

如何在Angular2中链接Http调用?

来自分类Dev

如何使用angular2 / http进行ajax调用?

来自分类Dev

如何模拟HTTP错误进行angular2测试

Related 相关文章

热门标签

归档