为什么Flow / Nuclide向我显示警告"不在Flow"在我的React-Native组件中?

时间:2016-11-14 10:31:04

标签: react-native flowtype nuclide-editor

我开始使用flow并拥有一个简单的组件:

// @flow
import React, { Component } from 'react';
import {
  Text,
  ScrollView
} from 'react-native';

const Conversations = (props: { messages: string }) => (
  <ScrollView>
    <Text>{props.messages}</Text>
  </ScrollView>
);

export default Conversations;

在Nuclide中,我看到此警告&#34;警告,类型覆盖,Flow&#34;未涵盖。它指向第9行,我使用<ScrollView>

enter image description here

为什么/它是什么意思/我该如何解决?

2 个答案:

答案 0 :(得分:1)

您已打开类型覆盖功能(请参见屏幕截图)。您可以单击状态栏中的百分比来打开和关闭它。它可以让你知道Flow有哪些表达式,哪些是无类型的(这意味着你可以对它们做任何事情,Flow不会警告你)。

type coverage feature

答案 1 :(得分:1)

React Native团队还没有将Flowtypes添加到核心组件中。

从官方反应原生路线图:

  

Flowtyping核心组件。业主:yungsters,alex_frantic。 ETA:1月

     

让最常见的组件附带Flow类型,用于a   更好的类型检查经验。这也应该更容易   减少破坏性变化。 Flow已经附带了React Native,所以这个   是进一步改善经验的合理步骤。

https://github.com/facebook/react-native/wiki/Roadmap/ebdbdc699bc083b98ac7b067465218fd70d30b66