![](/img/trans.png)
[英]Does ngrx/data provide a way to define a custom base API path for my DefaultDataService and then reference that path?
[英]Ngrx Data - extending DefaultDataService<T>
我正在嘗試擴展 ngrx/data DefaultDataService 並覆蓋一些方法。 我必須在方法中更改的是 entityUrl 並且我必須發送一個 HttpParam (告訴攔截器應該將哪個 BE 服務用於特定的 Http 請求)。
所以我重寫 ie getAll 方法如下:
@Injectable()
export class GeneralFilterDataDirectorateService extends DefaultDataService<IDropDown> {
constructor(
http: HttpClient,
httpUrlGenerator: HttpUrlGenerator
) {
super('Directorate', http, httpUrlGenerator);
}
getAll(): Observable<Array<IDropDown>> {
return this.http
.get<Array<IDropDown>>(`url`,
{ params: new CustomHttpParams(URL_TYPES.COMMON) })
}
}
但是它觸發了 Http 請求,它不會觸發任何 ngrx 事件。 (數據已接收,但未存儲在 ngrx 存儲中)
該實施在此 Udemy 培訓“NgRx(使用 NgRx 數據)- 完整指南”中有效,但不適用於我。
有誰知道問題可能是什么?
發現問題。
GeneralFilterDataDirectorateService.GetAll() 是直接調用的,而不是通過 EntityCollectionServiceBase 服務調用。
正確的調用鏈是:Component/Service => EntityCollectionServiceBase => DefaultDataService
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.