Reactjs 默认值不是函数类型错误

Reactjs 默认值不是函数类型错误,reactjs,typeerror,speech-to-text,Reactjs,Typeerror,Speech To Text,嗨,伙计们,我想在React组件中对文本进行演讲。但当我运行它时,我得到了以下错误: react\u speech\u recognition\uuuu WEBPACK\u IMPORTED\u MODULE\u 1\uuuuuu\u默认值(…)不是函数 有人能告诉我怎么做吗 import React, { Component } from 'react' import SpeechRecognition from 'react-speech-recognition' class Mic ex

嗨,伙计们,我想在React组件中对文本进行演讲。但当我运行它时,我得到了以下错误:
react\u speech\u recognition\uuuu WEBPACK\u IMPORTED\u MODULE\u 1\uuuuuu\u默认值(…)不是函数
有人能告诉我怎么做吗

import React, { Component } from 'react'
import SpeechRecognition from 'react-speech-recognition'

class Mic extends Component {
  render() {
    const { transcript, resetTranscript, browserSupportsSpeechRecognition } = this.props

    if (!browserSupportsSpeechRecognition) {
      return null
    }
    
    return (
      <div>
        <button onClick={SpeechRecognition.startListening}>Start</button>
        <button onClick={SpeechRecognition.stopListening}>Stop</button>
        <button onClick={resetTranscript}>Reset</button>
        <p>{transcript}</p>
      </div>
    )
  }
}

export default SpeechRecognition(Mic)

import React,{Component}来自“React”
从“react SpeechRecognition”导入SpeechRecognition
类Mic扩展组件{
render(){
const{transcript,resetTranscript,BrowserSupportsPeechRecognition}=this.props
如果(!BrowserSupportsPeechRecognition){
返回空
}
返回(
开始
停止
重置
{转录本}

) } } 导出默认语音识别(麦克风)
在app.js中,我这样运行它(如果有必要):

从“React”导入React;
从“/logo.svg”导入徽标;
导入“/App.css”;
从“./components/Container/Container”导入容器;
从“./components/Database/Database”导入数据库;
从“./components/Mic/Mic”导入麦克风;
从“./组件/测试/测试”导入测试;
函数App(){
返回(
//
);
}
导出默认应用程序;

这是因为这一行
语音识别(麦克风)
。该错误表示模块的默认导出不是函数,这意味着
SpeechRecognition
不是函数,因此无法调用它

将代码更改为

import React from 'react'
import SpeechRecognition, { useSpeechRecognition } from 'react-speech-recognition'

const Mic = () => {
  const { transcript, resetTranscript } = useSpeechRecognition()

  if (!SpeechRecognition.browserSupportsSpeechRecognition()) {
    return null
  }

  return (
    <div>
      <button onClick={SpeechRecognition.startListening}>Start</button>
      <button onClick={SpeechRecognition.stopListening}>Stop</button>
      <button onClick={resetTranscript}>Reset</button>
      <p>{transcript}</p>
    </div>
  )
}
export default Mic 
从“React”导入React
从“react SpeechRecognition”导入SpeechRecognition,{useSpeechRecognition}
常数麦克风=()=>{
const{transcript,resetTranscript}=useSpeechRecognition()
if(!SpeechRecognition.BrowserSupportsPeechRecognition()){
返回空
}
返回(
开始
停止
重置
{转录本}

) } 导出默认麦克风
看起来您已经安装了最新版本,但正在尝试以旧方式使用它

请看看这个

import React from 'react'
import SpeechRecognition, { useSpeechRecognition } from 'react-speech-recognition'

const Mic = () => {
  const { transcript, resetTranscript } = useSpeechRecognition()

  if (!SpeechRecognition.browserSupportsSpeechRecognition()) {
    return null
  }

  return (
    <div>
      <button onClick={SpeechRecognition.startListening}>Start</button>
      <button onClick={SpeechRecognition.stopListening}>Stop</button>
      <button onClick={resetTranscript}>Reset</button>
      <p>{transcript}</p>
    </div>
  )
}
export default Mic