Flow JS不能在JSX块中发现错误



我有以下组件,我已经添加了流类型标记:

// @flow                                          

import * as React from 'react';                             

type UnauthorisedProps = {|                       
message :string                                                  
|};                                                                       
    
export function Unauthorised(props :UnauthorisedProps) :* {               
return (                                                               
<div>                                                                 
<div>{ props.message }</div>                                        
</div>                                           
);                                            
}

但是在使用这个的地方,流没有捕捉到这个错误:

import { Unauthorised } from '../unauthorised/Unauthorised';
// @flow
function SomethingElse(props) {
return (<Unauthorised mexssage={ props.message } );
}

我正在运行命令

yarn run flow check

,它没有报告mexssage是错误拼写的明显错误。

如果我将UnauthorisedProps定义更改为无效的东西,flow确实会报告错误,因此它正在查看代码。

在我的初始设置中有几个原因/遗漏的步骤。

  1. .flowConfig需要这个自动值:

    (绑带)

    [选项]

    + react.runtime =自动

  2. React的导入需要从import React from 'react';更改为

    import * from ' React ';

  3. 所需函数的返回类型:React.Node

然后成功了。

相关内容

  • 没有找到相关文章

最新更新