gpt4 book ai didi

reactjs - 具有高阶组件的通用组件

转载 作者:行者123 更新时间:2023-12-03 13:24:56 24 4
gpt4 key购买 nike

我想给我的 React 组件 props 一个通用类型,但是当我将它包装在更高阶组件(material-ui)中时,它会丢失,我如何传递所需的信息?

type Props<T> = {
data: Array<T>;
}

class MyComponent<T> extends React.Component<Props<T>> {

const StyledComponent = withStyles(styles)(MyComponent)

使用<StyledComponent<myType给出一个错误,因为它不知道通用。

最佳答案

我的赌注是像这样注释你的新组件:

const StyledComponent: <T>(props: OuterProps<T>) => JSX.Element = withStyles(styles)(MyComponent) ;

请注意,您可能需要区分 OuterPropsInnerProps,请参阅下面我制作的示例以供引用:

https://stackblitz.com/edit/hoc-generics

希望有帮助!

关于reactjs - 具有高阶组件的通用组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50790921/

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