RTCRecorder:TypeError Recorder 不是构造函数

我正在尝试通过 React 应用程序从浏览器记录 wav 并将其发送到我的 nodeJS API。这在原型 html5 示例中工作正常。但现在我将其移至 React/Typescript。我对打字稿很陌生,所以一切都感觉有点hacky。


我正在使用 RecordRTC,到目前为止的代码是:


声明文件,因为 recordRTC 没有 @types/recordrtc:


declare module "recordrtc";

实际代码:


startRecording() {

        this.record = true

        this.captureUserMedia((stream: any) => {

            this.recordAudio = RecordRTC(stream, { recorderType: 'StereoAudioRecorder', type: 'audio', mimeType: 'audio/wav' });

            this.recordAudio.startRecording();

        });

    }


当我调用 startRecording 时,我得到了这个:


Uncaught TypeError: Recorder is not a constructor

    at initRecorder (RecordRTC.js:87)

    at Object.startRecording (RecordRTC.js:70)

    at PracticeScreen.tsx:143

chrome 浏览器中显示的是:

http://img1.mukewang.com/6155678800011afd10450675.jpg

我猜它与 .d.ts 文件有关,但我什至不知道从哪里开始。

猛跑小猪
浏览 297回答 1
1回答

噜噜哒

RecordRTC 文档显示recorderType需要一个类构造函数,但您的示例将其设置为字符串。您可以将其设置为StereoAudioRecorder的类构造函数,如下所示:RecordRTC(&nbsp; stream,&nbsp;&nbsp; {&nbsp;&nbsp; &nbsp; recorderType: StereoAudioRecorder,&nbsp; &nbsp;// <-------- class constructor not string&nbsp;&nbsp; &nbsp; type: 'audio',&nbsp;&nbsp; &nbsp; mimeType: 'audio/wav'&nbsp;&nbsp; },);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript