useFileDialog 
簡単にファイルダイアログを開きます。
デモ 
使用方法 
ts
import { useFileDialog } from '@vueuse/core'
const { files, open, reset, onCancel, onChange } = useFileDialog({
  accept: 'image/*', // Set to accept only image files
  directory: true, // Select directories instead of files if set true
})
onChange((files) => {
  /** do something with files */
})
onCancel(() => {
  /** do something on cancel */
})vue
<template>
  <button type="button" @click="open">
    Choose file
  </button>
</template>型定義 
型定義を表示
typescript
export interface UseFileDialogOptions extends ConfigurableDocument {
  /**
   * @default true
   */
  multiple?: boolean
  /**
   * @default '*'
   */
  accept?: string
  /**
   * Select the input source for the capture file.
   * @see [HTMLInputElement Capture](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/capture)
   */
  capture?: string
  /**
   * Reset when open file dialog.
   * @default false
   */
  reset?: boolean
  /**
   * Select directories instead of files.
   * @see [HTMLInputElement webkitdirectory](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/webkitdirectory)
   * @default false
   */
  directory?: boolean
}
export interface UseFileDialogReturn {
  files: Ref<FileList | null>
  open: (localOptions?: Partial<UseFileDialogOptions>) => void
  reset: () => void
  onChange: EventHookOn<FileList | null>
  onCancel: EventHookOn
}
/**
 * Open file dialog with ease.
 *
 * @see https://vueuse.dokyumento.jp/useFileDialog
 * @param options
 */
export declare function useFileDialog(
  options?: UseFileDialogOptions,
): UseFileDialogReturnソース 
コントリビューター 
変更ログ 
v12.0.0-beta.1 2024/11/21v11.1.0 2024/9/16v10.10.0 2024/5/27v10.7.0 2023/12/5v10.6.0 2023年11月9日v10.2.0 2023年6月16日v10.0.0-beta.1 2023年3月23日