如何在 reactJs 中做 webRTC
how to do webRTC in reactJs
我正在尝试将 webRTC 技术包含到我现有的 reactJs 应用程序中
问题是 React 无法识别 webRTC API 的
Line 185:19: 'webkitRTCPeerConnection' is not defined no-undef
Line 191:1: 'rtcPeerConn' is not defined no-undef
Line 212:3: 'rtcPeerConn' is not defined no-undef
Line 214:62: 'rtcPeerConn' is not defined no-undef
这个函数在功能性 React 组件中
function startSignaling(){
displayMessage("start signaling...");
rtcPeerConn = new webkitRTCPeerConnection(configuration)
//send ice candidate to other peer
rtcPeerConn.onicecandidate = function(evt){
if(evt.candidate){
io.emit("signal",{"type":"ice candidate","message":JSON.stringify({'candidate':evt.candidate}),room:signal_room})
displayMessage("completed that ice candidate");
}
}
rtcPeerConn.onnegotiationneeded = function(){
displayMessage("on negotiationnneded");
rtcPeerConn.createOffer(sendLocalDesc,logerror);
}
rtcPeerConn.onaddstream = (evt,err)=>{
displayMessage("creating the other stream");
if(err){
displayMessage(err)
}
success2(evt.stream);
}
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
navigator.mediaDevices.getUserMedia({video:true,audio:true}).then(stream=>{
success(stream);
// rtcPeerConn.addStream(stream);
}).catch(err=>{
logerror(err);
});
}
问题不在于 React 无法识别 WebRTC APIs,您没有定义 rtcPeerConn 变量。此外,此 API 不需要 webkitRTCPeerConnection
(供应商前缀),请改用 RTCPeerConnection
。
将 rtcPeerConn = new webkitRTCPeerConnection(configuration)
行替换为:
let rtcPeerConn = new RTCPeerConnection(configuration);
我正在尝试将 webRTC 技术包含到我现有的 reactJs 应用程序中
问题是 React 无法识别 webRTC API 的
Line 185:19: 'webkitRTCPeerConnection' is not defined no-undef
Line 191:1: 'rtcPeerConn' is not defined no-undef
Line 212:3: 'rtcPeerConn' is not defined no-undef
Line 214:62: 'rtcPeerConn' is not defined no-undef
这个函数在功能性 React 组件中
function startSignaling(){
displayMessage("start signaling...");
rtcPeerConn = new webkitRTCPeerConnection(configuration)
//send ice candidate to other peer
rtcPeerConn.onicecandidate = function(evt){
if(evt.candidate){
io.emit("signal",{"type":"ice candidate","message":JSON.stringify({'candidate':evt.candidate}),room:signal_room})
displayMessage("completed that ice candidate");
}
}
rtcPeerConn.onnegotiationneeded = function(){
displayMessage("on negotiationnneded");
rtcPeerConn.createOffer(sendLocalDesc,logerror);
}
rtcPeerConn.onaddstream = (evt,err)=>{
displayMessage("creating the other stream");
if(err){
displayMessage(err)
}
success2(evt.stream);
}
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
navigator.mediaDevices.getUserMedia({video:true,audio:true}).then(stream=>{
success(stream);
// rtcPeerConn.addStream(stream);
}).catch(err=>{
logerror(err);
});
}
问题不在于 React 无法识别 WebRTC APIs,您没有定义 rtcPeerConn 变量。此外,此 API 不需要 webkitRTCPeerConnection
(供应商前缀),请改用 RTCPeerConnection
。
将 rtcPeerConn = new webkitRTCPeerConnection(configuration)
行替换为:
let rtcPeerConn = new RTCPeerConnection(configuration);