ayiaq1 / el-tree-select

基于element-ui2.x扩展下拉树
224 stars 94 forks source link

[BUG] 通过鼠标点击在多个 el-tree-select 之间切换焦点时, el-tree-select 的下拉框无法消失. #94

Open novaeye opened 1 year ago

novaeye commented 1 year ago

问题产生的原因是 ._popoverHideFun() 内没有考虑事件源可能是另一个 el-tree-select 的情况.

PR随后就到:smiley:

ayiaq1 commented 1 year ago
return list.id === `el-tree-select-${this.guid}`;

这样会有一个问题,内部如果是点击内容或者折叠展开也会触发收起。
novaeye commented 1 year ago
return list.id === `el-tree-select-${this.guid}`;

这样会有一个问题,内部如果是点击内容或者折叠展开也会触发收起。

呃, 好像确实会产生这个副作用, 但是原来的判断逻辑好像也没有去检查事件源是不是在 popover 内? 🤔

ayiaq1 commented 1 year ago

可以尝试通过e.target内的属性判断,是否为当前。欢迎提PR~~~

novaeye commented 1 year ago
return list.id === `el-tree-select-${this.guid}` || list.classList.contains('el-tree-select-popper');

这样是否可行🤔

ayiaq1 commented 1 year ago
|| list.classList.contains('el-tree-select-popper');

这样也无法解决多个下拉的问题吧?

ayiaq1 commented 1 year ago

可以分开比较,如果在popover内,根据this.$ref.popover.id === paths 里面的id,则为自身。

ELing-Lonely commented 3 months ago

还个问题还没有解决吗大佬