Мой код выглядит так:
function func2(func2Inp: string) { /* some stuff */}
function func(inp?: string) {
if(inp){
func2(inp) // here is where flowTyped doesn't understand
}
}
Вот что говорит Flow:
Cannot call `func2` with `inp` bound to
`func2Inp` because undefined [1] is incompatible with string [2].
Как мне понять, что поток уверен, что inp не является неопределенным?
РЕДАКТИРОВАТЬ:
Поскольку люди говорят, что это правильно работает в комментариях, точная ситуация - это троичное условие, подобное этому (возможно, если и троичная работа отличается здесь):
const x = inp ? func2(inp) : somethingElse
Это версии Flow, которые я использую сейчас:
"eslint-plugin-flowtype": "^3.2.1",
"flow-bin": "^0.81.0"