2017-07-06 92 views
0

我想設置的功能參數東西avaible值是這樣的:是否可以預先定義函數參數的可用值?

let valueList = [ 
    'val1', 
    'val2', 
    'val3', 
]; 

let getSomething = (parameter: valueList) => { 
    // do something 
} 

而且我想在控制檯上的錯誤,如果比什麼都值列表變量等參數值。

而且這將是一件好事,如果IDE showup的可能值,當我調用該函數如下:

getSomething(| <- cursor) // when cursor here, the IDE show the possible values from valueList 
+0

所以你想要一個*枚舉*? – Li357

+0

可能的重複[如何在TypeScript中創建枚舉類型?](https://stackoverflow.com/questions/12687793/how-to-create-enum-like-type-in​​-typescript) –

+0

可能的重複[How使用有限的可能值在jsdoc中記錄字符串類型](https://stackoverflow.com/questions/19093935/how-to-document-a-string-type-in​​-jsdoc-with-limited-possible-values) – skiilaa

回答

0

使用enum此:

enum ValueList { 
    val1, 
    val2, 
    val3 
} 
1

您可以定義一個枚舉如其他答案中所述,或者如果您希望將參數設置爲字符串,則可以使用與聯合類型組合的字符串文字類型:

type valueList = 'val1' | 'val2' | 'val3'; 


let getSomething = (parameter: valueList) => { 
    // do something 
} 

getSomething("val1") // OK 
getSomething("val1-wrong") // Error 
相關問題