export const getSearchResults = function (state$: Observable<State>) {
return combineLatest<{ [id: string]: Book }, string[]>(
state$.let(getBookEntities),
state$.let(getSearchBookIds)
)
.map(([ entities, ids ]) => ids.map(id => entities[id]));
};
什麼,我需要解釋的是這一行:combineLatest <{[id:string]:Book},string []>這是什麼?
<{ [id: string]: Book }, string[]>
在世界上那是什麼?我從來沒有在任何地方看過它。更糟的是某種數組被用作我猜想的屬性名稱。另外,萬一你在我的頭上說話是否有這個名稱,所以我可以谷歌進行進一步的研究?它來自this ngrx示例。謝謝!
這是一個打字稿指數的簽名。在文檔中進行搜索:https://www.typescriptlang.org/docs/handbook/interfaces.html – cartant
有參與給你什麼是在一個單一的答案正在進行的全面解釋太多的概念。根據您對靜態類型的熟悉程度,您需要閱讀TypeScript中的參數化(又名通用)類型和結構類型。 –
@cartant這個文檔確實幫了我很大的忙,但是這個例子太糟糕了。 '接口字符串數組{ [指數:號碼]:字符串; 「它很糟糕,因爲它並沒有真正顯示特殊的用例場景。 – Helzgate