在Angular 11中,我们可以使用HttpParams来传递查询参数,而HttpParams的参数需要是字符串类型的。但是有时候我们需要传递不同于字符串类型的参数,比如数字或者布尔类型等。那么我们可以使用toString()方法来将参数转换为字符串类型,然后再传递给HttpParams。
示例代码如下:
import { HttpParams } from '@angular/common/http';
const queryParams = {
id: 1,
name: 'John',
isAdmin: true
};
let params = new HttpParams();
for(let key in queryParams) {
params = params.set(key, queryParams[key].toString());
}
this.http.get('/api/users', { params: params });
在上面的代码中,我们先定义了一个包含不同类型的参数的对象queryParams,然后使用for循环将这些参数转换为字符串类型并添加到HttpParams中。最后将HttpParams传递给http.get方法即可发送请求。