Skip to content

Commit e11699d

Browse files
DarrenSGantfu
andauthored
feat(useMediaControls): add playback error event (#4253)
Co-authored-by: Anthony Fu <anthonyfu117@hotmail.com>
1 parent 5dad94b commit e11699d

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

packages/core/useMediaControls/index.ts

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,7 @@ export function useMediaControls(target: MaybeRef<HTMLMediaElement | null | unde
173173

174174
// Events
175175
const sourceErrorEvent = createEventHook<Event>()
176+
const playbackErrorEvent = createEventHook<Event>()
176177

177178
/**
178179
* Disables the specified track. If no track is specified then
@@ -376,10 +377,15 @@ export function useMediaControls(target: MaybeRef<HTMLMediaElement | null | unde
376377
if (!el)
377378
return
378379

379-
if (isPlaying)
380-
el.play()
381-
else
380+
if (isPlaying) {
381+
el.play().catch((e) => {
382+
playbackErrorEvent.trigger(e)
383+
throw e
384+
})
385+
}
386+
else {
382387
el.pause()
388+
}
383389
})
384390

385391
useEventListener(target, 'timeupdate', () => ignoreCurrentTimeUpdates(() => currentTime.value = (toValue(target))!.currentTime))
@@ -463,6 +469,7 @@ export function useMediaControls(target: MaybeRef<HTMLMediaElement | null | unde
463469

464470
// Events
465471
onSourceError: sourceErrorEvent.on,
472+
onPlaybackError: playbackErrorEvent.on,
466473
}
467474
}
468475

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy