类型'{焦点():无效;}' 缺少类型“HTMLDivElement”的以下属性:align、addEventListener、removeEventListener、accessKey 和 234 more.ts(2740) index.d.ts(1041, 79):预期类型来自 this 的返回类型签名。
这是组件代码:
import React, { forwardRef, useImperativeHandle, useRef } from "react";
type Ref = HTMLDivElement | null;
type SwiperProps = {
children?: React.ReactNode | null;
selectedIndex?: number;
};
const Swiper = forwardRef<Ref, SwiperProps>(
({ children = null }: SwiperProps, ref) => {
const inputRef = useRef(null);
useImperativeHandle(ref, () => ({
focus() {
inputRef.current.focus();
}
}));
return (
<div ref={ref}>
{children}
<input type="text" ref={inputRef} />
</div>
);
}
);
export default Swiper;
完整代码在代码沙箱中;
https://codesandbox.io/s/useimperativehandlecomponenterror-lowon