useFullscreen
响应式全屏 API Fullscreen API。响应式全屏 API (Fullscreen API) 添加了方法,用于将特定元素(及其后代)以全屏模式呈现,并在不再需要时退出全屏模式。这使得可以将所需内容(例如在线游戏)使用用户的整个屏幕呈现,从屏幕上移除所有浏览器用户界面元素和其他应用程序,直到全屏模式关闭。
Demo
使用
import { useFullscreen } from '@vueuse/core'
import { useTemplateRef } from 'vue'
const { isFullscreen, enter, exit, toggle } = useFullscreen()
将指定元素全屏显示。某些平台(例如 iOS 上的 Safari)只允许视频元素全屏。
const el = useTemplateRef<HTMLElement>('el')
const { isFullscreen, enter, exit, toggle } = useFullscreen(el)
<video ref="el"></video>
组件方式使用
此函数也通过
@vueuse/components包提供一个无渲染组件版本。了解更多用法。
<template>
<UseFullscreen v-slot="{ toggle }">
<video />
<button @click="toggle">
Go Fullscreen
</button>
</UseFullscreen>
</template>
类型声明
export interface UseFullscreenOptions extends ConfigurableDocument {
/**
* Automatically exit fullscreen when component is unmounted
*
* @default false
*/
autoExit?: boolean
}
/**
* Reactive Fullscreen API.
*
* @see https://vueuse.org/useFullscreen
* @param target
* @param options
*/
export declare function useFullscreen(
target?: MaybeElementRef,
options?: UseFullscreenOptions,
): {
isSupported: ComputedRef<boolean>
isFullscreen: ShallowRef<boolean, boolean>
enter: () => Promise<void>
exit: () => Promise<void>
toggle: () => Promise<void>
}
export type UseFullscreenReturn = ReturnType<typeof useFullscreen>