使用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的一些基本知识?
答案 0 :(得分:4)
set
返回一个新实例。在您的第一个示例中,这实际上被扔掉了。
可能是演示该问题的老版本
let newParams = new HttpParams();
let discardedParams = newParams.set('ordering', 'name');
console.log('getting: ', newParams.get('ordering'));
从文档中
set()
返回
HttpParams:具有新值的新主体。