3 回答

TA貢獻1784條經驗 獲得超2個贊
它的類型定義來自 Flow,這意味著常量 App 是函數類型,它返回 ReactNode。
ReactNode 是以下類型之一: ReactChild | ReactFragment | ReactPortal | boolean | null | undefined
這意味著函數 App 可以返回任何有效的 JSX(在 React Native 中,它來自 View、Text、.etc)、ReactFragment、React.Portal、boolean、null、undefined
如果您對美元符號感到困惑,這里有一個解釋鏈接。 https://www.saltycrane.com/flow-type-cheat-sheet/latest/
名稱中帶有 $ 的“私有”或“魔法”類型有單獨的部分。請參閱此處的注釋并在此處發表評論。更新:現在這里記錄了一些這些類型。
為簡單起見,您可以將其視為Node
來自React
(將其視為范圍/命名空間)

TA貢獻1801條經驗 獲得超16個贊
它也是一種將 App 組件聲明為函數的類型,但您可以將其更改為
import React, { Component } from 'react';
import { Platform, StyleSheet, Text, View } from 'react-native';
export default class App extends Component {
render() {
return (
<View style={styles.container}>
<Text style={styles.instructions}>Hello World!</Text>
</View>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
backgroundColor: '#F5FCFF'
},
instructions: {
textAlign: 'center',
color: '#333333',
marginBottom: 5
}
});
不要忘記在最后一行刪除語句導出默認應用程序。

TA貢獻1820條經驗 獲得超10個贊
React$Node 是 react.js 中定義的類型
declare type React$Node =
| null
| boolean
| number
| string
| React$Element<any>
| React$Portal
| Iterable<?React$Node>;
添加回答
舉報