<div>
<video id="video" style="width=100%; height=100%; object-fit: fill" autoplay ref="videos" v-show="showVideo"></video>
<canvas v-show="!showVideo" width="300px" height="390px" id="personImgSize"></canvas>
</div>
一进入这个页面就开始调用这个函数
在mouted中调用这个函数
autoMakePhoto(){
let canvas = document.getElementsByTagName('canvas')[0];
this.context = canvas.getContext('2d');
let _this=this;
if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
navigator.mediaDevices.getUserMedia({
video: true,}).then(function (stream) {
_this.MediaStreamTrack=typeof stream.stop==='function'?stream:stream.getTracks()[0];
let video = _this.$refs.videos;
video["srcObject"]=stream;
video.play();
}).catch(function(err){
console.log(err);
//调用摄像头失败给的提示
});
}
},
离开这个页面 关闭摄像头###
beforeDestroy(){
this.cancalCloseVideo();
}
methods:{
cancalCloseVideo(){
this.MediaStreamTrack && this.MediaStreamTrack.stop();
}
}