tdesign-react icon indicating copy to clipboard operation
tdesign-react copied to clipboard

[Popup] 在受控情况下,如何方便的实现点击Popup外部关闭Popup

Open 2ue opened this issue 11 months ago • 3 comments

这个功能解决了什么问题

在设置了visible属性后,组件变为受控组件,这时想要实现“点击Popup外部关闭Popup”不够方便,要么手搓js监听事件来改变visible值;当然社区也有提供一些方案,方便处理该问题,比如react-cool-onclickoutside,但受限于Popup没有接收ref属性,导致无法实现该功能。

你建议的方案是什么

建议方案一: 增加一个事件onClickOut,在点击Popup之外的元素触发

建议方案二: 接收外部传入的ref属性,使其可以使用社区方案快速实现

2ue avatar Jan 22 '25 03:01 2ue

👋 @2ue,感谢给 TDesign 提出了 issue。 请根据 issue 模版确保背景信息的完善,我们将调查并尽快回复你。

github-actions[bot] avatar Jan 22 '25 03:01 github-actions[bot]

onVisibleChange就可以了吧

huangchen1031 avatar Jan 22 '25 06:01 huangchen1031

onVisibleChange就可以了吧

确实可以实现,感谢~ 不过比较迷惑,点击Popup之外的区域居然会触发这个事件

2ue avatar Feb 05 '25 07:02 2ue