我在nextjs的项目中使用RecordRTC库,但它显示错误
node_modules/recordrtc/RecordRTC.js (1586:0) @ eval
TypeError: Cannot set property navigator of #<Object> which has only a getter
我的代码是
navigator.mediaDevices.getUserMedia(mediaConstraints).then((stream)=>{
var options:{
mimeType:"audio/wav",
numberOfAudioChannels:1|2,
} = {
mimeType: "audio/wav",
numberOfAudioChannels: 1,
};
let record = new RecordRTC(stream,options);
record.startRecording();
setRecordRtc(record);
});
mediaConstraints 所在位置
let mediaConstraints = {
video: false,
audio: true
};
我去了 RecordRTC.js 1586 行,我得到了
global.navigator = {
userAgent: browserFakeUserAgent,
getUserMedia: function() {}
};
我不知道我做错了什么,请帮助我。 另外,我正在 nextjs 中进行客户端渲染以渲染此组件以使用导航器,但我仍然收到此错误。
我尝试在其 github lib 上寻找解决方案。还尝试使用 nextjs 看看这个库是否有错误,但到目前为止还没有运气。
你在 Chrome 上运行它吗?我在 Safari 上遇到了同样的问题,但它可以在 Chrome 上运行