由于发布了React Hooks,我想尝试使用Hooks将一个或两个React组件“更新”为新的有状态功能组件。
因此,我想更新我的“ GenerciTooltip”组件,让我解释一下:现在,这是GenericComponent
→class GenericTooltip<T> extends React.Component<T, {}>
。之所以这样构建,是因为它只考虑了工具提示相对于其内容的居中位置,并在工具提示的底部添加了一个小箭头(实际上,在此GenericTooltip<T>
组件中,仅通过componentDidUpdate()
方法,并定义了tooltipRef
变量。
然后,对于我要实现的每种图表类型,我都在创建一个特定的组件,这是因为不同的图表可能希望在工具提示中显示不同的数据。因此,让我们以PieChart为例:我编写了PieChartTooltip
组件,它是下一个→class PieChartTooltip extends GenericTooltip<IPieChartTooltipProps>
。如您所见,每个特定的工具提示组件都扩展了GenericTooltip
组件。在这些特定的工具提示组件中,我仅实现了render()
方法。
因此,最后,GenericTooltip
组件负责改善工具提示的位置,而特定工具提示组件负责呈现适合图表的内容。
现在..我想使用新的Hooks来转换GenericTooltip
组件和特定的工具提示组件,但是..是否可以实现这样的功能?我的意思是,我不能再使用extends
关键字。
谢谢
编辑:这是codesandbox→https://codesandbox.io/s/p54wor9k5j,它是我的代码的简化版本,但是它显示了我的问题所需要的所有内容(我认为方法的真正实现并不重要)< / p>