2017-06-01 40 views
0

TypeScript docus的接口部分後,我遇到了函數類型的問題。給出的示例如下:函數類型接口定義的調用函數

interface SearchFunc { 
    (source: string, subString: string): boolean; 
} 

let mySearch: SearchFunc; 
mySearch = function(source: string, subString: string) { 
    let result = source.search(subString); 
    return result > -1; 
} 

如何使用此新功能?我嘗試了各種選項,但總是給出以下錯誤「錯誤TS2346:提供的參數不匹配調用目標的任何簽名。」

let isInString = mySearch({source: 'abcdefg', subString: 'c'}) // Error! 
+0

做這個工作'let isInString = mySearch('abcdefg','c')'? – adiga

+0

是的,我不敢相信我花了多少時間嘗試通過各種物體! Thankyou –

+0

好的。我已經發布它作爲答案。 – adiga

回答

0

該函數有2個字符串作爲參數,並且您傳遞的是具有2個字符串屬性的對象。因此,應該用適當的參數調用函數。