• 本站域名更换为 qyi.io

Angular9 HttpClient设置参数无效问题

Angular admin 4个月前 (12-09) 294次浏览 0个评论

初步学习Angular9,在httpclient模块栽了半天。根据官方文档设置ur居然是无效的,比如

    let httpParams = new HttpParams().set('code', 'aaaa');//可以成功设置code
    httpParams.set('state', 'ccccc'); // 无法设置state

看了stackoverflow的回答后才知道

HttpParams旨在是不可变的。该set和append方法不修改现有的实例。相反,它们返回新实例并应用更改。

所以这里有两种方案:

1、使用 fromString 变量从查询字符串中直接创建 HTTP 参数

const data = {
      code: this.subInfo.code,
      state: this.subInfo.state
    };
const httpParams = new HttpParams({fromObject: data});

 

2、直接传递对象而不是HttpParams

http.get(url, {params: data})


所以直接是用方法2了~

参考文章:
https://stackoverflow.com/questions/45210406/angular-4-3-httpclient-set-params


版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Angular9 HttpClient设置参数无效问题
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址