Javascript &引用;错误:函数组件不能有字符串引用;当我不';不要使用字符串引用

Javascript &引用;错误:函数组件不能有字符串引用;当我不';不要使用字符串引用,javascript,reactjs,react-hooks,Javascript,Reactjs,React Hooks,所以我得到了一个组件 const Projects = () => { const state ={ activeItemID: 1 } const CarouselRef = useRef(null); const NextSlide = () => { CarouselRef.current.style = "opacity: 0"; } return( <Content> <

所以我得到了一个组件

const Projects = () => {
  const state ={
    activeItemID: 1
  }

  const CarouselRef = useRef(null);

  const NextSlide = () => {
    CarouselRef.current.style = "opacity: 0";
  }

  return(
    <Content>
      <CarouselButton left />
      <Carousel>
        {CarouselData.map((elem) => {
          return(
            <CarouselItem ref={state.activeItemID === elem.id && CarouselRef} key={elem.id} />
        );})}
      </Carousel>
      <CarouselButton right onClick={NextSlide} />
    </Content>
  );
}
但我不使用string ref,我应该使用useRef(),错误会一直显示。我该怎么办?是吗 使用条件呈现对吗?


我不知道为什么要添加比较语句
state.activeItemID===elem.id
,但这就是原因。删除此选项将解决问题


我相信
state.activeItemID===elem.id&&CarouselRef
,当
false
时,会在DOM上转换为
“false”
。试试这个:

 <CarouselItem ref={state.activeItemID === elem.id ? CarouselRef : null} key={elem.id} />


因为我只需要在激活的项中使用该引用,它可以工作,但react会在每个项idk中添加CarouselRef
 <CarouselItem ref={state.activeItemID === elem.id ? CarouselRef : null} key={elem.id} />