gpt4 book ai didi

reactjs - 将属性附加到用 React.forwardRef 包装的功能组件

转载 作者:行者123 更新时间:2023-12-05 05:04:38 35 4
gpt4 key购买 nike

我有一个用 React.forwardRef 包装的组件,碰巧它也是一个复合组件。

我不知道该如何保养

Form.Item  = FormItem;

同时 Form 组件函数被 forwardRef 包裹。

const Form = React.forwardRef((props, ref) => { return <form></form>});

typescript 给我一个错误(正确地)说

Property 'Item' does not exist on type 'ForwardRefExoticComponent>'.ts(2339)

最佳答案

只是为了更清楚地说明解决方案,因为它在外部站点上(致谢原作者 here,感谢@Antoan Elenkov)

export interface Props = {
...yourPropsHere;
};

export interface CompoundedComponent extends React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLInputElement>> {
yourStaticFunctionOrSomethingLikeThat: () => void;
}

const Component = React.forwardRef<HTMLInputElement, Props>((props, ref) => (
<input ref={ref} {...props} />
)) as CompoundedComponent;

Component.yourStaticFunctionOrSomethingLikeThat = () => {};

关于reactjs - 将属性附加到用 React.forwardRef 包装的功能组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60967886/

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