有没有办法指定"不是"输入流量?例如,
compact = (input: Array<any>): Array<notFalsey> => input.filter(i => !!i);
?
答案 0 :(得分:3)
目前,没有语法可以指定“非”类型,例如$Not<string>
,它只是一个字符串。
对于您的特定compact
示例,Flow Array.prototype.filter
的库定义确实包含使用Boolean
函数作为过滤函数的特殊情况。所以你可以写
const compactedArray = myArray.filter(Boolean);
v0.31.0将附带魔术类型$NonMaybeType
,因此您可以编写返回类型为compact
的{{1}}函数。