ngrx getWithQuery()中的默认参数



我想知道如何发送默认数据已经在getWithQuery(),像这样:

@Injectable({providedIn: 'root'})
export class CompaniesDataService extends DefaultDataService<Company> {
private readonly _URL: string = '/api/companies';
private readonly _DEFAULT_QUERIES: QueryParams = {top: '0', limit: '10', order: "name"};
constructor(http: HttpClient, httpUrlGenerator: HttpUrlGenerator) {
super('Company', http, httpUrlGenerator);
}
getWithQuery(queryParams: QueryParams | string = this._DEFAULT_QUERIES): Observable<Company[]> {
return this.http
.post<FmsHttpResponse<Company>>(`${this._URL}/search`, queryParams)
.pipe(map(response => response.content));
}
}

我的意思是this._DEFAULT_QUERIESgetWithQuery()中作为默认的queryParams通过。

当我添加函数与解析器这样:

return this.companyEntityService.getWithQuery()
.pipe(tap(() => this.companyEntityService.setLoaded(true)));

I got error:Expected 1-2 arguments, but got 0..

任何想法?我想补充一点,我是一个新手ngrx程序员,也许这是一个简单的问题,我找不到答案。

为什么要发送已经在类中作为参数的东西?为什么不这样做呢?

getWithQuery(queryParams: QueryParams | undefined): Observable<Company[]> {
if(queryParams === undefined){
queryParams = this._DEFAULT_QUERIES;
}
return this.http
.post<FmsHttpResponse<Company>>(`${this._URL}/search`, queryParams)
.pipe(map(response => response.content));
}