mirror of
https://github.com/element-plus/element-plus.git
synced 2025-02-23 11:59:34 +08:00
fix(components): [select-v2] with teleported="false"
dropdown closes abnormally (#16714)
fix(components): with teleported="false" dropdown closes bug Move toggleMenu click event to the right place wrapperRef Only wrapperRef can control tooltip content visble or not closed #16653
This commit is contained in:
parent
32ed206b1f
commit
db0fec864a
@ -206,7 +206,8 @@ describe('Select', () => {
|
||||
DEFAULT_PLACEHOLDER
|
||||
)
|
||||
const select = wrapper.findComponent(Select)
|
||||
await wrapper.trigger('click')
|
||||
const tipDefWrapper = wrapper.find(`.${WRAPPER_CLASS_NAME}`)
|
||||
await tipDefWrapper.trigger('click')
|
||||
expect((select.vm as any).expanded).toBeTruthy()
|
||||
})
|
||||
|
||||
@ -465,7 +466,8 @@ describe('Select', () => {
|
||||
})
|
||||
await nextTick()
|
||||
const vm = wrapper.vm as any
|
||||
await wrapper.trigger('click')
|
||||
const tipDefWrapper = wrapper.find(`.${WRAPPER_CLASS_NAME}`)
|
||||
await tipDefWrapper.trigger('click')
|
||||
await nextTick()
|
||||
expect(vm.visible).toBeTruthy()
|
||||
})
|
||||
@ -1541,7 +1543,8 @@ describe('Select', () => {
|
||||
const select = wrapper.findComponent(Select)
|
||||
const selectVm = select.vm as any
|
||||
const vm = wrapper.vm as any
|
||||
await wrapper.trigger('click')
|
||||
const tipDefWrapper = wrapper.find(`.${WRAPPER_CLASS_NAME}`)
|
||||
await tipDefWrapper.trigger('click')
|
||||
await nextTick()
|
||||
expect(selectVm.states.hoveringIndex).toBe(-1)
|
||||
// should skip the disabled option
|
||||
@ -1634,7 +1637,8 @@ describe('Select', () => {
|
||||
const wrapper = createSelect()
|
||||
await nextTick()
|
||||
const select = wrapper.findComponent(Select)
|
||||
await wrapper.trigger('click')
|
||||
const tipDefWrapper = wrapper.find(`.${WRAPPER_CLASS_NAME}`)
|
||||
await tipDefWrapper.trigger('click')
|
||||
expect((select.vm as any).expanded).toBeTruthy()
|
||||
const box = document.querySelector<HTMLElement>('.el-vl__wrapper')
|
||||
expect(hasClass(box, 'always-on')).toBe(false)
|
||||
@ -1650,7 +1654,8 @@ describe('Select', () => {
|
||||
})
|
||||
await nextTick()
|
||||
const select = wrapper.findComponent(Select)
|
||||
await wrapper.trigger('click')
|
||||
const tipDefWrapper = wrapper.find(`.${WRAPPER_CLASS_NAME}`)
|
||||
await tipDefWrapper.trigger('click')
|
||||
expect((select.vm as any).expanded).toBeTruthy()
|
||||
const box = document.querySelector<HTMLElement>('.el-vl__wrapper')
|
||||
expect(hasClass(box, 'always-on')).toBe(true)
|
||||
|
@ -5,7 +5,6 @@
|
||||
:class="[nsSelect.b(), nsSelect.m(selectSize)]"
|
||||
@mouseenter="states.inputHovering = true"
|
||||
@mouseleave="states.inputHovering = false"
|
||||
@click.prevent.stop="toggleMenu"
|
||||
>
|
||||
<el-tooltip
|
||||
ref="tooltipRef"
|
||||
@ -35,6 +34,7 @@
|
||||
nsSelect.is('filterable', filterable),
|
||||
nsSelect.is('disabled', selectDisabled),
|
||||
]"
|
||||
@click.prevent.stop="toggleMenu"
|
||||
>
|
||||
<div
|
||||
v-if="$slots.prefix"
|
||||
|
Loading…
Reference in New Issue
Block a user