Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

目前的双击设计好像有问题 #113

Open
xtuer opened this issue Nov 20, 2024 · 2 comments
Open

目前的双击设计好像有问题 #113

xtuer opened this issue Nov 20, 2024 · 2 comments

Comments

@xtuer
Copy link

xtuer commented Nov 20, 2024

双击的问题:

  • 双击时会触发 2 次单击事件 (@click),然后再触发双击事件 (@node-dblclick)。设计原则上双击就是双击、单击就是单击,不应该触发不需要的事件。
  • 双击时会先展开节点,然后又把节点收起,行为上也是有点怪异的,双击行为应该让用户可控制,或者传入参数可以给用户选择双击时是否不进行展开收起操作。

其次其他小问题,双击事件是 node-dblclick,单击事件是 click,API 统一上来说,单击事件命名为 node-click 或者会更好一些。

@ChuChencheng
Copy link
Collaborator

关于触发两次 click 的问题

在原生元素上双击也是会触发两次 click 的样子;从技术上说,如果要在 dblclick 的时候阻止 click,就需要在第一次点击的时候拦截 click 事件,等上一段时间,根据是否点击了第二次决定要触发 click 还是 dblclick,这样会导致 click 事件有延迟

image

双击时展开节点的问题

确实可以优化

click 事件命名

我的问题,好几年前做的了,可能是觉得 click 比较常用吧hh,可以考虑加个 node-click

@xtuer
Copy link
Author

xtuer commented Dec 6, 2024

关于触发两次 click 的问题

在原生元素上双击也是会触发两次 click 的样子;从技术上说,如果要在 dblclick 的时候阻止 click,就需要在第一次点击的时候拦截 click 事件,等上一段时间,根据是否点击了第二次决定要触发 click 还是 dblclick,这样会导致 click 事件有延迟

image ### 双击时展开节点的问题 确实可以优化

click 事件命名

我的问题,好几年前做的了,可能是觉得 click 比较常用吧hh,可以考虑加个 node-click

确实只能用 interval 进行判断,给 clone 下来加了 100ms 判断单击和双击,只能说是解决了设计意图和行为的问题。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants