微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

反应“无法在'MediaRecorder'上执行'stop':MediaRecorder的状态为'inactive'” 我想用ReactJS编写一个小型录音网站,但我总是会收到此错误:这是我编写的代码的一部分:

如何解决反应“无法在'MediaRecorder'上执行'stop':MediaRecorder的状态为'inactive'” 我想用ReactJS编写一个小型录音网站,但我总是会收到此错误:这是我编写的代码的一部分:

我想用ReactJS编写一个小型录音网站,但我总是会收到此错误

Failed to execute 'stop' on 'MediaRecorder': The MediaRecorder's state is 'inactive'.

这是我编写的代码的一部分:

var [recording,setRecording] = useState(false);
var audiochunks = [];
var mrecorder;

navigator.mediaDevices.getUserMedia({audio:true}).then(stream => {

        mrecorder = new MediaRecorder(stream);
        mrecorder.addEventListener("dataavailable",event => {

            audiochunks.push(event.data);

        });

    })

function toggle_recording(){ setRecording(!recording); handle_record() }

function handle_record(){

        if(recording){
            mrecorder.stop();
        }
        else{
            mrecorder.start();
        }

    }

/**JSX Part of App.js component*/
return(

    <section>

         <button onclick=toggle_recording/>

    </section>

)

按钮将记录状态设置为true或false,并启动或停止MediaRecorder。
是因为我首先拒绝了变量并在getUserMedia函数中对其进行了初始化,是否可能出现错误
希望你能帮我!

感谢您的建议,
disembleergon

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。