Skip to content

usePointerSwipe

Category
Export Size
1.33 kB
Last Changed
4 months ago

Reactive swipe detection based on PointerEvents.

Demo

Usage

vue
<script setup lang="ts">
import { 
usePointerSwipe
} from '@vueuse/core'
import {
useTemplateRef
} from 'vue'
const
el
=
useTemplateRef
('el')
const {
isSwiping
,
direction
} =
usePointerSwipe
(
el
)
</script> <template> <
div
ref
="
el
">
Swipe here </
div
>
</template>

Type Declarations

Show Type Declarations
ts
export interface UsePointerSwipeOptions {
  /**
   * @default 50
   */
  
threshold
?: number
/** * Callback on swipe start. */
onSwipeStart
?: (
e
: PointerEvent) => void
/** * Callback on swipe move. */
onSwipe
?: (
e
: PointerEvent) => void
/** * Callback on swipe end. */
onSwipeEnd
?: (
e
: PointerEvent,
direction
:
UseSwipeDirection
) => void
/** * Pointer types to listen to. * * @default ['mouse', 'touch', 'pen'] */
pointerTypes
?:
PointerType
[]
/** * Disable text selection on swipe. * * @default false */
disableTextSelect
?: boolean
} export interface UsePointerSwipeReturn { readonly
isSwiping
:
ShallowRef
<boolean>
direction
:
Readonly
<
ShallowRef
<
UseSwipeDirection
>>
readonly
posStart
:
Position
readonly
posEnd
:
Position
distanceX
:
Readonly
<
ComputedRef
<number>>
distanceY
:
Readonly
<
ComputedRef
<number>>
stop
: () => void
} /** * Reactive swipe detection based on PointerEvents. * * @see https://vueuse.org/usePointerSwipe * @param target * @param options */ export declare function
usePointerSwipe
(
target
:
MaybeRefOrGetter
<HTMLElement | null | undefined>,
options
?: UsePointerSwipeOptions,
): UsePointerSwipeReturn

Source

SourceDemoDocs

Contributors

Anthony Fu
IlyaL
Anthony Fu
Jeffrey Li
SerKo
2nofa11
Fernando Fernández
Mohammad Amin Mokhtari
Alexey Istomin
丶远方
Curt Grimes
sun0day
Jelf
wheat
MinatoHikari
Ilya Komichev
lstoeferle

Changelog

v13.2.0 on
d3ed6 - fix: allow vertical scroll in usePointerSwipe (#4637) (#4720)
v12.8.0 on
7432f - feat(types): deprecate MaybeRef and MaybeRefOrGetter in favor of Vue's native (#4636)
v12.4.0 on
dd316 - feat: use passive event handlers everywhere is possible (#4477)
v12.0.0-beta.1 on
0a9ed - feat!: drop Vue 2 support, optimize bundles and clean up (#4349)
v10.7.0 on
fd67b - feat: add disableTextSelect option (#3604)
v10.0.0-beta.4 on
4d757 - feat(types)!: rename MaybeComputedRef to MaybeRefOrGetter
10e98 - feat(toRef)!: rename resolveRef to toRef

Released under the MIT License.

Build faster with AI
New Masterclass to help you leverage AI in your Vue workflow
Get Early Access