我试图找出如何判断哪个元素被用作ref,即在我的情况下
const circleRef = useRef<AnimatedCircle>(undefined);
AnimatedCircle
是来自第三方库的SVG组件,以这种方式定义它会导致错误
是否有一些通用的方法来定义哪个元素是红色的?
AnimatedCircle
是一种功能,而不是一种类型。这意味着它不能在TypeScript中代替类型使用,就像在useRef
的泛型约束中一样。相反,您需要使用typeof operator
转换为类型:
const circleRef = useRef<typeof AnimatedCircle | null>(null);