2013-03-27 42 views
1

我試圖調用數組中的函數。我收到一條錯誤消息:表達式類型{function}不能分配給布爾值。函數和調用的打字稿數組

聲明:

public conditions: { (value: any): bool; }[] = []; 

用法:

var myBool: bool = conditions["myKey"]("someParam"); 


請告訴我錯在這裏?我需要投在這裏嗎?

+1

您正在使用哪種版本的打字稿?他們改變了自釋放以來的幾件事情,我問,因爲'var conditions:{(value:any):bool; } [] = []; var myBool:bool = conditions [「myKey」](「someParam」);'爲我編譯好。 – Kevkong 2013-03-27 15:36:20

+0

0.8.3使用Webstorm 6(它更受限制,什麼都不壞) – 2013-03-27 15:37:00

+0

有趣的是,我在使用visual studio的舊版本(0.8.1.1)...將升級到0.8.3來測試它。 – Kevkong 2013-03-27 15:43:49

回答

1

這工作在TypeScript playground,它使用0.8.3。你確定這實際上是有問題的代碼嗎?使用字符串索引數組會產生類型爲any的值,因此函數調用對於類型目的而言是不相關的,因爲它只會產生any