我正在构建一个反应应用程序,需要访问使用以下代码获取的网络摄像头:
navigator.mediaDevices.getUserMedia({ video: true, audio: false })
.then(function(stream) {
video.srcObject = stream;
window.localstream = stream;
video.play();
})
但是,当我卸载当前组件时,我的网络摄像头保持打开状态。在我的 componentWillUnmount 块中,我尝试了以下代码。
video.pause();
video.srcObject=null;
window.localstream.getTracks()[0].stop();
window.localstream.getVideoTracks()[0].stop();
但是,我的网络摄像头灯仍然亮着。当我之后控制台记录 mediaStreamTrack 时,我得到:
如何停止我的网络摄像头?