有没有办法指定一个"不是"输入流量?

时间:2016-08-14 15:38:44

标签: flowtype

有没有办法指定&#34;不是&#34;输入流量?例如, compact = (input: Array<any>): Array<notFalsey> => input.filter(i => !!i);

1 个答案:

答案 0 :(得分:3)

目前,没有语法可以指定“非”类型,例如$Not<string>,它只是一个字符串。

对于您的特定compact示例,Flow Array.prototype.filter的库定义确实包含使用Boolean函数作为过滤函数的特殊情况。所以你可以写

const compactedArray = myArray.filter(Boolean);

v0.31.0将附带魔术类型$NonMaybeType,因此您可以编写返回类型为compact的{​​{1}}函数。