antd的popover组件如何隐藏?

发布于 2022-09-13 00:53:58 字数 785 浏览 20 评论 0

<Popover
      visible={this.props.event?.deviceCode === item.deviceCode}
      title={
             <>
                 <AlertOutlined />
                 <span>报警</span>
             </>
      }
      content={
               <span style={{ color: 'tomato' }}>{this.props.event?.msg || ''}
               </span>
              }
      >
              <span className="machine-name-text">{item.deviceName}</span>
</Popover>

这是我的popover
用的是蚂蚁的antd

我每次用visible可以控制打开关闭

但是我想要设置滞留时间 比如1秒以内没有关闭就自动关闭

好像没有duration之类的props

手动设置一个定时器我又不知道从哪儿下手

谢谢大佬~~~~

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

你げ笑在眉眼 2022-09-20 00:53:58
 setPopoverTimer = (code, msg) => {
        this.setState({
            event: {
                deviceCode: code,
                msg: msg
            }
        })
        setTimeout(() => {
            this.setState({
                event: {
                    deviceCode: "",
                    msg: ""
                }
            })
        }, 1500)
    }

    componentWillReceiveProps(props) {
        if (props.event.deviceCode && props.event.msg) {
            this.setPopoverTimer(props.event.deviceCode, props.event.msg)
        }
    }

如果有更好的解决方案 欢迎回复~

裂开嘴轻声笑有多痛 2022-09-20 00:53:58

那就在onVisibleChange下定时器吧

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文