You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React组件类型错误:类型X无法赋值给‘IntrinsicAttributes & Y’求助

解决React组件类型不匹配错误

错误原因

你的Content组件类型定义有误。React.FC的泛型参数是组件props的类型,但你直接传入了数组类型MyType。而父组件传递的是data={arrOfObj},这意味着组件接收的props是一个包含data属性的对象,并非直接的数组。

修复方案

方案1:声明明确的Props类型

先定义组件的props类型,再传入React.FC:

// Content.jsx
type MyType = { name: string, age: number }[];
type ContentProps = {
  data: MyType;
};

export const Content: React.FC<ContentProps> = ({ data }) => {
  // 正常使用data数组
  return (
    <div>
      {data.map(item => (
        <p key={item.name}>{item.name}, {item.age}</p>
      ))}
    </div>
  );
};

方案2:直接在泛型中定义props

如果不需要单独声明类型,也可以直接在泛型参数里写props结构:

// Content.jsx
type MyType = { name: string, age: number }[];

export const Content: React.FC<{ data: MyType }> = ({ data }) => {
  // 业务逻辑代码
};

错误根源解释

原代码中React.FC<MyType>表示组件期望接收的props是MyType类型(即一个数组),但父组件传递的是{ data: arrOfObj }这个对象,类型为{ data: MyType },和组件期望的类型不匹配,因此触发了类型赋值错误。

内容的提问来源于stack exchange,提问作者kamolmachine

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 15:24:40