[英]What is the type for a function that takes a string and returns a string or takes void and returns void?
我有以下功能;
const capitalize = (input) =>
(!(typeof input === 'undefined'))
? input
.split(' ')
.map(capitalizeWord)
.join(' ')
: undefined
這要么接受一個字符串並返回一個字符串,要么接受未定義並返回未定義,但是從不接受一個字符串並返回未定義或接受未定義並返回一個字符串。 我的想法是類型應該是(void => void) & (string => string)
但這根本不符合我想要的; Flow擔心我沒有指定要大寫輸入是字符串還是未定義的內容,而要執行的操作實際上是將其分派到正確的類型。 當我讓flow只是推斷類型時,它會推斷(void | string) => (string | void)
,這太寬泛了。 正確的簽名是什么?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.