Reactjs 键入React组件的返回类型
要创建React,应用程序会删除Reactjs 键入React组件的返回类型,reactjs,typescript,eslint,Reactjs,Typescript,Eslint,要创建React,应用程序会删除React.FC作为组件的返回类型(有关原因,请参阅PR)。这是否意味着ESlint的规则不再适用于React组件?如果是这样的话,如何让ESlint满意呢?一个选项是将函数声明为组件类型,它封装了一个返回类型: import { ComponentType } from 'react'; const App: ComponentType<AppProps> = () => ( <div>Whatever</div>
React.FC
作为组件的返回类型(有关原因,请参阅PR)。这是否意味着ESlint的规则不再适用于React组件?如果是这样的话,如何让ESlint满意呢?一个选项是将函数声明为组件类型,它封装了一个返回类型:
import { ComponentType } from 'react';
const App: ComponentType<AppProps> = () => (
<div>Whatever</div>
);
从'react'导入{ComponentType};
常量应用程序:组件类型=()=>(
无论什么
);
一个选项是将函数声明为组件类型
,它封装了一个返回类型:
import { ComponentType } from 'react';
const App: ComponentType<AppProps> = () => (
<div>Whatever</div>
);
从'react'导入{ComponentType};
常量应用程序:组件类型=()=>(
无论什么
);
您可以使用React.ReactElement | null
作为函数组件的返回类型。这就是React.FC
今天所做的
interface Props {
children: React.ReactNode;
}
const MyComponent = ({ children }: Props): React.ReactElement => (
<div>{children}</div>
)
界面道具{
子节点:React.ReactNode;
}
常量MyComponent=({children}:Props):React.ReactElement=>(
{儿童}
)
您可以使用React.ReactElement | null
作为函数组件的返回类型。这就是React.FC
今天所做的
interface Props {
children: React.ReactNode;
}
const MyComponent = ({ children }: Props): React.ReactElement => (
<div>{children}</div>
)
界面道具{
子节点:React.ReactNode;
}
常量MyComponent=({children}:Props):React.ReactElement=>(
{儿童}
)
您遇到什么问题了吗?您遇到什么问题了吗?ReactNode
还包括未定义的
,这是不允许的。返回undefined
将导致React to throw渲染时未返回任何内容。这通常意味着缺少返回语句。或者,要不呈现任何内容,请返回null
ReactNode
还包括不允许的未定义的。返回undefined
将导致React to throw渲染时未返回任何内容。这通常意味着缺少返回语句。或者,要不渲染任何内容,请返回null
。