【问题标题】:Angular4: How to set params with HttpParams?Angular4:如何使用 HttpParams 设置参数?
【发布时间】:2017-08-21 15:19:44
【问题描述】:

所以,从 http 迁移到 httpClient,我正在尝试使用 HttpParams 为我的 get 请求设置参数....

逻辑很简单

const params = new HttpParams();

if(expression) {
    params.set('foo', 'bar');
}

this.http.get('url.json', {params: params});

这样params就不会通过了! params.set('foo', 'bar');什么都不做..(无论满足什么条件;))

如果我这样做:

const params = new HttpParams().set('foo', 'bar');

foo 已设置!

如何在我的案例中使用 HttpParams(涉及一些评估)??

【问题讨论】:

    标签: angular httpclient


    【解决方案1】:

    试试这个

    let params = new HttpParams();
    
    if(expression) {
        params = params.set('foo', 'bar');
    }
    

    API:

    /**
    * Construct a new body with a new value for the given parameter name.
    */
    set(param: string, value: string): HttpParams;
    

    【讨论】:

    • 相信我,用 let 试过了,但它没有设置值....无论我设置 params.set 多少次,只设置连接到构造函数的一个:/
    • 忘记了参数 = params.set('foo', 'bar')
    • @AntonLee 我面临同样类型的问题stackoverflow.com/questions/59517991/… 如果可能的话你能帮我吗
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-02-14
    • 1970-01-01
    • 2019-02-24
    • 1970-01-01
    • 2018-03-25
    • 2018-05-22
    • 1970-01-01
    相关资源
    最近更新 更多