扩展React有状态功能组件

时间:2019-02-26 08:43:22

标签: javascript reactjs react-hooks

由于发布了React Hooks,我想尝试使用Hooks将一个或两个React组件“更新”为新的有状态功能组件。

因此,我想更新我的“ GenerciTooltip”组件,让我解释一下:现在,这是GenericComponentclass 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>

0 个答案:

没有答案