Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
296 views
in Technique[技术] by (71.8m points)

reactjs - How can I constraint a type if use element ref as an input value of a function

I have tried codes like this, but it seems T should have some constraints which I am not clear.

export const useResizeObserver = <T>(elementRef: ElementRef<T>, debounceTimeout = 100) => {}
question from:https://stackoverflow.com/questions/66063821/how-can-i-constraint-a-type-if-use-element-ref-as-an-input-value-of-a-function

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

These are the restraints for what T you can pass to an ElementRef, from the React typings:

T extends
            | ForwardRefExoticComponent<any>
            | { new (props: any): Component<any> }
            | ((props: any, context?: any) => ReactElement | null)
            | keyof JSX.IntrinsicElements

It can be any ComponentType (FunctionComponent or ClassComponent), a built-in DOM element like div, and some other complicated things.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...