重复触发 onPopupVisibleChange

未关闭
#84 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
28/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
停滞
技术栈
javascript, react
领域
frontend

调研方向

从 issue 中展示的 Trigger 用法开始,在启用 popupVisible 和 mask 的情况下复现 mobile-trigger 的点击序列。跟踪 onPopupVisibleChange 的调用,包括 FastClick 的设置,并确认一次点击会关闭菜单,而不会立即重新打开它。

由索引模型根据 Issue 内容生成。

描述

onPopupVisibleChange(popupVisible) {
    this.setState({ popupVisible })
}

  <Trigger
    action={['click']}
    popup={this.renderMenu('inline')}
    popupAlign={{
      points: ['tl', 'bl'],
      offset: [0, 3]
    }}
    popupVisible={this.state.popupVisible}
    onPopupVisibleChange={::this.onPopupVisibleChange}
    mask
    destroyPopupOnHide
  >
    <div className="mobile-trigger">
      <Icon type="bars"/>
    </div>
  </Trigger>

里面的 mobile-trigger 点击后展开菜单。然后再点击后应该关闭的。但是却重复触发了事件,导致关闭后立刻打开了。

感觉像是点击穿透问题, fastclick 也用了,也无效。

document.addEventListener('DOMContentLoaded', () => FastClick.attach(document.body), false)
主要语言
TypeScript
星标
391
派生
245
PR 合并指标
30 天内没有已合并 PR

贡献指南

这个仓库没有索引到贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

react-component/trigger 的其他 Issue

查看 react-component/trigger 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。