(打字稿)面临尝试将超赞字体图标作为对象传递给子组件的问题

(typescript) facing problem trying to pass font-awsome icon as object to child component

错误:类型 'object' 不可分配给类型 'IconProp'。 类型 'object' 不可分配给类型 '[IconPrefix, IconName]'.ts(2322) index.d.ts(25, 3):预期类型来自 属性 'icon' ,它在此处声明为类型 'IntrinsicAttributes & FontAwesomeIconProps'

interface Props {
  img: object;
}

父组件:

import { faBriefcaseMedical } from "@fortawesome/free-solid-svg-icons";
<MissionCards img={faBriefcaseMedical} />

子组件:

import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
<FontAwesomeIcon icon={Props.img} />

我想你可以像这样导入那个类型

import { IconProp } from '@fortawesome/fontawesome-svg-core';
interface Props {
   img: IconProp;
}

source

您可以简单的整理如下:

import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'
import { IconProp } from '@fortawesome/fontawesome-svg-core'
import { faSearch } from '@fortawesome/free-solid-svg-icons'

<FontAwesomeIcon icon={faSearch as IconProp} />