我今天使用React Native 0.51.0开始了一个新项目,并注意到默认项目文件的类语法添加了一些新内容,< {}>扩展组件后的语法:
export default class App extends Component<{}> { ... }
我尝试做研究,但大多数搜索引擎都会忽略特殊字符,即使是精确的字符串匹配,所以试图找出这种语法是很困难的.我做了一些测试,并且能够发现这个变化出现在v0.49.0中. release notes没有提到这个添加语法的功能.
很多模糊的关键字搜索和阅读让我相信这可能是与TypeScript相关的语法,但是对语言不熟悉,我不知道如何搜索并找到更多有关语法的内容而不知道是什么适当的用语是.谁能告诉我语法的名称及其作用?特别是关于React Native.
它与您将在组件中收到的道具的
Flow种类型相关.组分LT; {}>意味着你不希望组件接收道具.
使用Flow和React.Component,您可以定义props和state的类型(有关详细信息,请参阅React$Component类型声明).
关于React组件的Flow documentation示例
import * as React from 'react'; type Props = { /* ... */ }; type State = { count: number,}; class MyComponent extends React.Component<Props,State> { state = { count: 0,}; componentDidMount() { setInterval(() => { this.setState(prevState => ({ count: prevState.count + 1,})); },1000); } render() { return <div>Count: {this.state.count}</div>; } } <MyComponent />;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。