reactjs 类型"undefined"不能赋给类型"Element|零'

wf82jlnq  于 2023-01-08  发布在  React
关注(0)|答案(2)|浏览(195)

我使用一个组件:

const data: any[] = []

<Tiers data={data}/>

我的组件是这样构建的:

const Tiers = ({
   data,
   }: {
    data?: any;
}) => {

    console.log('data', data?.length!);
    if(!data.length) return undefined;

};

export default Tiers;

我会自动收到以下消息:

'Tiers' cannot be used as a JSX component.
  Its return type 'undefined' is not a valid JSX element.
56lgkhnf

56lgkhnf1#

用途

return null

代替

return undefined

使Tiers成为有效的JSX组件。
组件中需要两个return语句,如下所示:

const Tiers = ({
   data,
   }: {
    data?: any;
}) => {

    console.log('data', data?.length!);
    if(!data.length) return null;
    return null
};

export default Tiers;
dldeef67

dldeef672#

您的代码有两个问题,
1.它至少需要一个返回JSX.Element的条件(即使是像Hello这样非常简单的条件),如果没有,您可能需要一个函数来代替。
1.一个组件不能返回undefined。如果你希望它什么都不返回,你应该返回null而不是undefined。

相关问题