【问题标题】:HttpParams refuse to set [duplicate]HttpParams拒绝设置[重复]
【发布时间】:2020-02-18 04:17:00
【问题描述】:

使用 Angular 8 我正在尝试使用下面的代码设置 HttpParam,请查看最后一行的结果。

let newParams = new HttpParams();
newParams.set('ordering', 'name');
console.log('getting: ', newParams.get('ordering'));
// getting: null

使用下面的代码,我看到参数已按预期设置:

let newParams = new HttpParams().set('ordering', 'name');
console.log('getting: ', newParams.get('ordering'));
// getting: name

查看文档我无法理解为什么这不起作用。这是一个错误,还是我只是缺少 javascript 中的一些基本内容?

【问题讨论】:

  • HttpParams 接口的 set(key, value) 方法返回一个新的 HttpParams 实例,其中包含键值对的新条目。更多信息请参考官方文档 (angular.io/api/common/http/HttpParams#set)。
  • 谢谢,我现在看到整个描述都是专门针对这个的……哎呀……如果在文档中有一个例子就好了,这会节省我一些时间

标签: javascript angular


【解决方案1】:

set 返回一个新实例。在您的第一个示例中,这实际上被丢弃了。

演示问题的简单版本可能是

let newParams = new HttpParams();
let discardedParams = newParams.set('ordering', 'name');
console.log('getting: ', newParams.get('ordering'));

来自文档:

设置()

返回

HttpParams:具有新值的新主体。

【讨论】:

    猜你喜欢
    • 2013-03-25
    • 1970-01-01
    • 2023-03-21
    • 2014-10-04
    • 1970-01-01
    • 2017-10-30
    • 2013-05-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多