之间的区别是什么:
export default class HelloWorldApp extends Component {
VS
export default class HelloWorldApp extends Component<{}> {
答案 0 :(得分:5)
它是javascript解析器/编译器的类型语法。 {}
大括号表示一个空对象,其中包含可以分配给它的属性。
https://medium.com/flow-type/even-better-support-for-react-in-flow-25b0a3485627
例如Animal extends Component<{name: string, age: number}>
表示此类Animal组件接受name属性作为字符串,age作为数字接受。您可以按预期使用它:
<Animal name="Toby" age={3} />
默认情况下,此类语法无效。正如JSX的情况一样,这也不是普通的javascript。由于您正在使用的响应环境,您的代码正在运行。
javascript中的类型系统用于开发/发布周期。如果您忽略类型和警告但其余的javascript代码有效,您将不会注意到。详细了解flow和typescript了解详情。