我有以下组件,我已经添加了流类型标记:
// @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确实会报告错误,因此它正在查看代码。
在我的初始设置中有几个原因/遗漏的步骤。
-
.flowConfig
需要这个自动值:(绑带)
[选项]
+ react.runtime =自动
-
React的导入需要从
import React from 'react';
更改为import * from ' React ';
-
所需函数的返回类型:
React.Node
然后成功了。