gpt4 book ai didi

reactjs - 如何使用 Typescript 和 styled-components 创建 ref

转载 作者:行者123 更新时间:2023-12-05 06:23:19 25 4
gpt4 key购买 nike

我正在尝试像这样向 React 组件添加一个 ref:

const Dashboard: React.FC = () => {
const [headerHeight, setHeaderHeight] = useState(0);

const headerRef = React.createRef<HTMLInputElement>();
useEffect(() => {
// @ts-ignore: Object is possibly 'null'
setHeaderHeight(ref.current.clientHeight)
});

return (
<Root>
<Header ref={headerRef} />

<div>other contents</div>
</Root>
);
};

<Header />是一个简单的 React.FC .TS 报错说:

Type '{ ref: RefObject; }' is not assignable to type 'IntrinsicAttributes & { children?: ReactNode; }'. Property 'ref' does not exist on type 'IntrinsicAttributes & { children?: ReactNode; }'

我怎样才能克服这个问题?

最佳答案

看起来您正在尝试将输入元素的 ref 类型提供给另一个 React 组件。如果您尝试将 ref 转发到 Header 组件内的元素,您可以使用 React 的 forwardRef功能。

关于reactjs - 如何使用 Typescript 和 styled-components 创建 ref,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58476030/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com