跳到主要內容

usePermission

類別
導出大小
869 B
上次變更
3 週前
相關

Reactive Permissions API. Permissions API 提供了工具,讓開發人員可以實作更好的使用者體驗,尤其是在權限方面。

Demo

Usage

js
import { usePermission } from '@vueuse/core'

const microphoneAccess = usePermission('microphone')

Type Declarations

顯示類型宣告
typescript
type DescriptorNamePolyfill =
  | "accelerometer"
  | "accessibility-events"
  | "ambient-light-sensor"
  | "background-sync"
  | "camera"
  | "clipboard-read"
  | "clipboard-write"
  | "gyroscope"
  | "magnetometer"
  | "microphone"
  | "notifications"
  | "payment-handler"
  | "persistent-storage"
  | "push"
  | "speaker"
  | "local-fonts"
export type GeneralPermissionDescriptor =
  | PermissionDescriptor
  | {
      name: DescriptorNamePolyfill
    }
export interface UsePermissionOptions<Controls extends boolean>
  extends ConfigurableNavigator {
  /**
   * Expose more controls
   *
   * @default false
   */
  controls?: Controls
}
export type UsePermissionReturn = Readonly<
  ShallowRef<PermissionState | undefined>
>
export interface UsePermissionReturnWithControls {
  state: UsePermissionReturn
  isSupported: ComputedRef<boolean>
  query: () => Promise<PermissionStatus | undefined>
}
/**
 * Reactive Permissions API.
 *
 * @see https://vueuse.dev.org.tw/usePermission
 */
export declare function usePermission(
  permissionDesc:
    | GeneralPermissionDescriptor
    | GeneralPermissionDescriptor["name"],
  options?: UsePermissionOptions<false>,
): UsePermissionReturn
export declare function usePermission(
  permissionDesc:
    | GeneralPermissionDescriptor
    | GeneralPermissionDescriptor["name"],
  options: UsePermissionOptions<true>,
): UsePermissionReturnWithControls

Source

SourceDemoDocs

Contributors

Anthony Fu
Fernando Fernández
Antério Vieira
IlyaL
Alex Liu
Damon Muma
Anthony Fu
sean
Jelf
Guille
Alex Kozack
Nurettin Kaya

更新日誌

v12.4.0 於 1/10/2025
dd316 - 特性:盡可能在各處使用被動事件處理程序 (#4477)
v12.0.0-beta.1 於 11/21/2024
0a9ed - 特性!:移除 Vue 2 支援、優化 bundle 並清理 (#4349)
v11.0.2 於 8/24/2024
2aaa1 - 修復:狀態設定 (#4167)
v11.0.1 於 8/19/2024
63a22 - 修復:修復記憶體洩漏 (#4157)
v11.0.0-beta.2 於 7/17/2024
5f584 - 特性:新增 local-fonts 權限 (#4098)

以 MIT 許可證發布。