Сделать поток понятным может быть только желаемый тип в выражении IF - PullRequest
0 голосов
/ 03 июня 2019

Мой код выглядит так:

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"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...