Skip to content

Commit 7f38cfb

Browse files
committed
refactor(CPopover): remove toggler wrapper
1 parent 43d7131 commit 7f38cfb

File tree

1 file changed

+12
-23
lines changed

1 file changed

+12
-23
lines changed

src/components/popover/CPopover.ts

Lines changed: 12 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -97,13 +97,14 @@ const CPopover = defineComponent({
9797
})
9898
}
9999

100-
const handleToggle = () => {
100+
const handleToggle = (event: Event) => {
101+
togglerRef.value = event.target
101102
visible.value = !visible.value
102103
}
103104

104105
const initPopper = () => {
105106
if (togglerRef.value) {
106-
popper.value = createPopper(togglerRef.value.firstChild, popoverRef.value, {
107+
popper.value = createPopper(togglerRef.value, popoverRef.value, {
107108
placement: props.placement,
108109
modifiers: [
109110
{
@@ -167,28 +168,16 @@ const CPopover = defineComponent({
167168
),
168169
),
169170
),
170-
h(
171-
'span',
172-
{
173-
style: {
174-
display: 'contents',
171+
slots.toggler &&
172+
slots.toggler({
173+
on: {
174+
click: (event: Event) => props.trigger.includes('click') && handleToggle(event),
175+
blur: (event: Event) => props.trigger.includes('focus') && handleToggle(event),
176+
focus: (event: Event) => props.trigger.includes('focus') && handleToggle(event),
177+
mouseenter: (event: Event) => props.trigger.includes('hover') && handleToggle(event),
178+
mouseleave: (event: Event) => props.trigger.includes('hover') && handleToggle(event),
175179
},
176-
ref: togglerRef,
177-
},
178-
{
179-
default: () =>
180-
slots.toggler &&
181-
slots.toggler({
182-
on: {
183-
click: () => props.trigger.includes('click') && handleToggle(),
184-
blur: () => props.trigger.includes('focus') && handleToggle(),
185-
focus: () => props.trigger.includes('focus') && handleToggle(),
186-
mouseenter: () => props.trigger.includes('hover') && handleToggle(),
187-
mouseleave: () => props.trigger.includes('hover') && handleToggle(),
188-
},
189-
}),
190-
},
191-
),
180+
}),
192181
]
193182
},
194183
})

0 commit comments

Comments
 (0)