Я столкнулся с ошибкой потока, которую я считаю ложноотрицательным. Вот мой соответствующий код:
export type ValidationError = {
name: string,
id?: number,
message: string
}
const determineErrorMessage = (name: string) => {
if (!_.isEmpty(validationErrors)) {
const error: ValidationError = validationErrors.find(error => error.name === name);
if (error) {
return (
<Form.Label className={classes.errorMessage}>
{error.message}
</Form.Label>
);
} else {
return null;
}
} else {
return null;
}
}
Ошибка с этой частью кода:
validationErrors.find(error => error.name === name)
Поток говорит следующее:
Cannot assign `validationErrors.find(...)` to `error` because undefined [1] is incompatible with `ValidationError`
Я имеюПрочитав немного об этом, вы даже обратились к соответствующей странице документации Flow: https://flow.org/en/docs/types/arrays/ Примерно на 2/3 пути вниз по этой странице написано: «Поскольку Flow сделан умнее, возможно, в будущем будет возможно исправитьэта проблема, но на данный момент вы должны знать об этом. "
Должен ли я просто признать, что я не сделал ничего плохого и что поток будет улучшаться в будущем?