小编典典

const App:()=> React $ Node =()=> {…}:这条指令是什么意思?

reactjs

在上react-native init ProjectName,主应用程序文件App.js通过以下方式包含组件的声明:

const App: () => React$Node = () => {...}

该指令是什么意思?

我的意思是,我习惯于将组件定义为const App = () => {...},所以我尤其不理解之间的表达: () => React$Node


阅读 1474

收藏
2020-07-22

共1个答案

小编典典

它来自Flow的类型定义,这意味着常量App是函数类型,并且它返回ReactNode。

ReactNode是以下类型之一: ReactChild | ReactFragment | ReactPortal | boolean | null | undefined

这意味着功能App可以返回任何有效的JSX(以本机方式从View,Text,.etc中进行响应),ReactFragment,React.Portal,布尔值,null,未定义

如果您对美元符号感到困惑,请访问以下链接以获取解释。 https://www.saltycrane.com/flow-type-cheat-
sheet/latest/

名称分别为$的“专用”或“魔术”类型有单独的部分。请参阅此处的注释,并在此处进行评论。更新:现在在这里记录了其中一些类型。

为了简单起见,您可以将其视为Node源于React(将其视为作用域/命名空间)

2020-07-22