Lzh on GitHub

响应式语音识别

用法

import { useSpeechRecognition } from '@vueuse/core'

const {
  isSupported,  // 是否支持
  isListening, // 是否正在监听
  isFinal,     // 是否最终结果
  result,      // 识别结果
  start,       // 开始识别
  stop,        // 停止识别
} = useSpeechRecognition()

选项

以下显示了选项的默认值,它们将直接传递给 SpeechRecognition API

useSpeechRecognition({
  lang: 'en-US',       // 语言
  interimResults: true, // 是否返回中间结果
  continuous: true,    // 是否持续监听
})

类型声明

export interface UseSpeechRecognitionOptions extends ConfigurableWindow {
  /**
   * Controls whether continuous results are returned for each recognition, or only a single result.
   *
   * @default true
   */
  continuous?: boolean
  /**
   * Controls whether interim results should be returned (true) or not (false.) Interim results are results that are not yet final
   *
   * @default true
   */
  interimResults?: boolean
  /**
   * Language for SpeechRecognition
   *
   * @default 'en-US'
   */
  lang?: MaybeRefOrGetter<string>
  /**
   * A number representing the maximum returned alternatives for each result.
   *
   * @see https://developer.mozilla.org/en-US/docs/Web/API/SpeechRecognition/maxAlternatives
   * @default 1
   */
  maxAlternatives?: number
}
/**
 * Reactive SpeechRecognition.
 *
 * @see https://vueuse.org/useSpeechRecognition
 * @see https://developer.mozilla.org/en-US/docs/Web/API/SpeechRecognition SpeechRecognition
 * @param options
 */
export declare function useSpeechRecognition(
  options?: UseSpeechRecognitionOptions,
): {
  isSupported: ComputedRef<boolean>
  isListening: ShallowRef<boolean, boolean>
  isFinal: ShallowRef<boolean, boolean>
  recognition: SpeechRecognition | undefined
  result: ShallowRef<string, string>
  error: ShallowRef<
    SpeechRecognitionErrorEvent | undefined,
    SpeechRecognitionErrorEvent | undefined
  >
  toggle: (value?: boolean) => void
  start: () => void
  stop: () => void
}
export type UseSpeechRecognitionReturn = ReturnType<typeof useSpeechRecognition>