在生产构建中,Angular的查询参数可能会被优化或删除,因此不会显示在URL中。如果你想在生产构建中保留查询参数,可以使用queryParamsHandling选项来解决。
以下是一个示例代码:
import { Component } from '@angular/core';
import { HttpClient, HttpParams } from '@angular/common/http';
@Component({
  selector: 'app-example',
  template: `
    
  `,
})
export class ExampleComponent {
  constructor(private http: HttpClient) {}
  getUsers() {
    const params = new HttpParams()
      .set('page', '1')
      .set('limit', '10');
    this.http.get('/api/users', { params, queryParamsHandling: 'merge' })
      .subscribe((response) => {
        console.log(response);
      });
  }
}
在上面的示例中,我们创建了一个HttpParams对象来设置查询参数page和limit。然后,我们将params对象传递给get方法的options参数中,并设置queryParamsHandling选项为'merge'。这将合并查询参数并附加到URL中,即使在生产构建中也能保留查询参数。
请注意,这种方法可能会导致URL变得较长,因为每次请求时都会附加查询参数。所以请确保在必要的时候使用这种方法。