我使用typescript将道具从父母传递给孩子:这是子组件
interface CarouselItemProps {
interval: number;
src: string;
alt: string;
title: string;
p: string;
btn: string;
}
const CarouselItem:FC<CarouselItemProps> = (props: CarouselItemProps) => {
return (
<>
<Carousel.Item interval={props.interval}>
<img
className="d-block w-100 carousel-img"
src={props.src}
alt={props.alt}
/>
<Carousel.Caption>
<h1 className="carousel-title">{props.title}</h1>
<p className="carousel-p">{props.p}</p>
<Button variant="primary" className="btn-contact-us">
{props.btn}
</Button>
</Carousel.Caption>
</Carousel.Item>
</>
);
};
export default CarouselItem;
和父组件:
<Carousel>
<CarouselItem interval={1000}
src="/images/banner-home.png"
alt="First slide"
title="A company with industrial network 4.0"
p="We provide technology solutions that serve business and life
demands in the time of the technology boom with a young and
dynamic internal force to keep abreast of the development trend of
information society"
btn="Contact Us"
/>
但我在父组件中的src="/images/banner-home.png"
处得到了错误
类型‘{interval:number;src:string;alt:string,title:string;p:一串btn:string;}'不可分配给类型"IntrnsicAttributes"&省略<选取<详细HTML道具<HTML属性,HTMLDivElement>quot;键"|HTMLAttributes键<gt>amp;{…;},BsPrefixProps<gt&旋转木马项目道具>amp;BsPrefixProps<gt&旋转木马道具;{…;}'。类型上不存在属性"src"'本质属性&省略<选取<详细HTML道具<HTML属性,HTMLDivElement>quot;键"|HTMLAttributes键<gt>amp;{…;},BsPrefixProps<gt&旋转木马项目道具>amp;BsPrefixProps<gt&旋转木马道具;{…;}的
有人知道如何解决这个问题吗?
我犯了一个巨大的错误:我从react引导程序而不是从我自己的组件导入了CarouselItem
查看错误Property 'src' does not exist on type 'IntrinsicAttributes....
中的短语。我怀疑属性src
是像img
这样的HTML元素特有的,所以将这个名称从src
更改为其他名称可能会很好。
尝试在接口中将src
更改为srcImage
,同时传递父组件。
注:此答案未经测试。