usePointerLock
リアクティブなポインターロック。
デモ
基本Usage
js
import { usePointerLock } from '@vueuse/core'
const { isSupported, lock, unlock, element, triggerElement } = usePointerLock()
コンポーネントのUsage
この関数は、
@vueuse/components
パッケージを介してレンダリングレスコンポーネントバージョンも提供します。使用法について詳しくはこちら。
vue
<template>
<UsePointerLock v-slot="{ lock }">
<canvas />
<button @click="lock">
Lock Pointer on Canvas
</button>
</UsePointerLock>
</template>
型宣言
typescript
type MaybeHTMLElement = HTMLElement | undefined | null
export interface UsePointerLockOptions extends ConfigurableDocument {}
/**
* Reactive pointer lock.
*
* @see https://vueuse.dokyumento.jp/usePointerLock
* @param target
* @param options
*/
export declare function usePointerLock(
target?: MaybeElementRef<MaybeHTMLElement>,
options?: UsePointerLockOptions,
): {
isSupported: ComputedRef<boolean>
element: Ref<MaybeHTMLElement, MaybeHTMLElement>
triggerElement: Ref<MaybeHTMLElement, MaybeHTMLElement>
lock: (e: MaybeElementRef<MaybeHTMLElement> | Event) => Promise<HTMLElement>
unlock: () => Promise<boolean>
}
export type UsePointerLockReturn = ReturnType<typeof usePointerLock>