【问题标题】:Angular: How to make get request after post/put request is successful?Angular:发布/放置请求成功后如何发出获取请求?
【发布时间】:2017-07-26 18:37:23
【问题描述】:

我使用get request 获得了设备列表。我编辑了一些细节并使用put request 对其进行了更新,但现在我希望我的列表应该在成功put request 后更新(提出获取请求)。

这是我正在尝试的:

putConfig(Device) {

    var request =  this._http
        .put(this._puturl+Device.deviceId, Device)
        .map(res => res.json())
        .subscribe(res => this.getConfig() )



    return request;
}

看起来不像这个作品。谁能帮帮我?

【问题讨论】:

    标签: angular xmlhttprequest


    【解决方案1】:

    你返回的其实是订阅,你需要做的是:

    var request = this._http
      .put(...)
      .switchMap(() => this.getConfig());
    
    return request;
    

    确保您订阅了结果:

    putConfig(Device).subscribe()
    

    让它'热',否则它不会触发。

    请注意,我删除了 map 操作,因为它不是必需的,无论如何您都不要使用 res

    【讨论】:

    • 上面写着'switchMap' does not exist on type 'Observable<Response>'.!
    • 你应该导入它:import 'rxjs/add/operator/switchMap';
    猜你喜欢
    • 1970-01-01
    • 2022-06-24
    • 1970-01-01
    • 2019-01-17
    • 2021-12-30
    • 2019-08-10
    • 2016-12-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多