antd 中日期组件添加左侧日期范围选择

一、产品需求

产品有这样一个需求, 在实时的日期组件左侧添加一个快捷时间范围选择,并且选择后,窗口不会自动关闭。

大致样式长这样:

二、需求拆解

拆解一下这个需求,需要满足三个要点:

① 快捷时间范围选择

② 显示在左侧

③ 选择后时间选择窗口不关闭

三、需求开发

1、antd 原生支持

通过 ranges 可以提供快捷时间范围选择,但是选择后窗口自动关闭。并且 ranges 显示在 下方,而不是左侧。仅仅满足了快捷时间范围选择这一需求。如下:

2、组合 api

那么,我们就要捞一捞 api,看看如何利用现有的 api 满足当前的需求。

第一步思路:

解决选择后,窗口自动关闭的问题。

通过 插槽中的 extrafooter 实现。

第二步思路:

显示在左侧

通过 renderpanel 属性实现。

四、总结

其实从中可以看出,antd 封装组件的一些思路: 

提供了一些完全可以自定义的prop,但实际上,renderpanel 函数是传了默认的参数的。 也就是默认的 rendernode。 也就是说,你可以在当前的样式上添加东西,也可以重新定制。 提供了足够的灵活性和开放性。

猜你喜欢

转载自blog.csdn.net/qq_34539486/article/details/130569256