FC是FunctionComponent的简写, 这个类型定义了默认的props(如 children)以及一些静态属性(如 defaultProps)。
import React, { FC } from 'react';
/**
* 声明Props类型
*/
export interface MyComponentProps {
className?: string;
style?: React.CSSProperties;
}
export const MyComponent: FC<MyComponentProps> = props => {
return <div>hello react</div>;
};
你也可以直接使用普通函数来进行组件声明, 下文会看到这种形式更加灵活:
export interface MyComponentProps {
className?: string;
style?: React.CSSProperties;
// 手动声明children
children?: React.ReactNode;
}
export function MyComponent(props: MyComponentProps) {
return <div>hello react</div>;
}