Skip to content

Commit ade64a4

Browse files
committed
fix: properly support array triggers with useScriptTriggerElement
1 parent e9e464a commit ade64a4

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

src/runtime/composables/useScriptTriggerElement.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,16 +50,17 @@ export function useScriptTriggerElement(options: ElementScriptTriggerOptions): P
5050
const { el, trigger } = options
5151
if (import.meta.server || !el)
5252
return new Promise<void>(() => {})
53-
if (el && options.trigger === 'visible')
53+
const triggers = (Array.isArray(options.trigger) ? options.trigger : [options.trigger]).filter(Boolean) as string[]
54+
if (el && triggers.some(t => ['visibility', 'visible'].includes(t)))
5455
return useElementVisibilityPromise(el)
5556
if (!trigger)
5657
return Promise.resolve()
57-
if (trigger !== 'immediate') {
58+
if (!triggers.includes('immediate')) {
5859
// TODO optimize this, only have 1 instance of intersection observer, stop on find
5960
return new Promise<void>((resolve) => {
6061
const _ = useEventListener(
6162
typeof el !== 'undefined' ? (el as EventTarget) : document.body,
62-
trigger,
63+
triggers,
6364
() => {
6465
resolve()
6566
_()

0 commit comments

Comments
 (0)