2017-07-18 28 views
1

我正在運行帶有內部Typescript 2.4.1編譯器的Intellij 2017.1.5。編譯器抱怨:Intellij Typescript編譯器不知道TResult類型

Error:(322, 58) TS2339:Property 'map' does not exist on type '{}'.

在我看來,lodash使用的TResult類型是未知的。這是一種語言/ Typescript庫類型嗎?

enter image description here

回答

1

正如你可以lodash的最新型的定義看,該功能獲取的定義如下:

get<TResult>(
     object: any, 
     path: StringRepresentable|StringRepresentable[], 
     defaultValue?: TResult 
    ): TResult; 

默認情況下TResult意味着什麼,除了一個事實,即默認值和返回類型必須相同。但是,如果你沒有defaultValue,你也可以通過調用_.get和預期的結果類型告訴編譯器TResult應該是什麼。所以像_.get<Option[]>(state, 'roomcodes.selectedOptions').map...

相關問題