博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
h5实现微信扫码
阅读量:7196 次
发布时间:2019-06-29

本文共 1238 字,大约阅读时间需要 4 分钟。

扫码访问

编码过程

  1. 使用webpack打包,开发项目,webpack-dev-server进行本地开发调试
  2. 根据微信页面,书写html和css(less书写,更为便捷)
  3. 构思整个运行流程,书写交互逻辑

API调用

  1. //访问用户媒体设备的兼容方法function getUserMedia(constrains, success) { let error = (err) => { console.error('API:getUserMedia,' + err) } if (navigator.mediaDevices.getUserMedia) { //最新标准API navigator.mediaDevices.getUserMedia(constrains).then(success).catch(error); } else if (navigator.webkitGetUserMedia) { //webkit内核浏览器 navigator.webkitGetUserMedia(constrains).then(success).catch(error); } else if (navigator.mozGetUserMedia) { //Firefox浏览器 navagator.mozGetUserMedia(constrains).then(success).catch(error); } else if (navigator.getUserMedia) { //旧版API navigator.getUserMedia(constrains).then(success).catch(error); }}
  2. //兼容性获取视频流配置项async function getConstraints() { const constraints = { audio: false, video: { width: { max: 400 }, height: { max: 280 } // facingMode: { exact: "environment" } //标准写法 } }; //获取设备信息,并且找出摄像头1,为后置摄像头 let devices = await navigator.mediaDevices.enumerateDevices() let videoinput = devices.filter(it => it.kind === 'videoinput') if (videoinput[1]) { constraints.video.deviceId = { exact: videoinput[1].deviceId || videoinput[0].deviceId } } return constraints}

转载于:https://juejin.im/post/5c0097c8f265da611f076b15

你可能感兴趣的文章
windows 下 Nginx + PHP 配置调试运行
查看>>
使用 Electron 打开外部链接或文件管理器
查看>>
Vue文档Template Syntax时想到的一个到另一个的问题
查看>>
MySQL · B+树并发控制机制的前世今生
查看>>
2018年最好的45个Vue开源项目汇总
查看>>
没有JS的前端:体积更小、速度更快!
查看>>
举重若轻的人人车移动端数据平台
查看>>
SHELL(bash)脚本编程六:执行流程
查看>>
AI一周热闻:周志华获IEEE技术成就奖;英伟达发布最小AI计算机
查看>>
NPM发布新的安全功能
查看>>
Java SE 12扩展Switch语句/表达式完整指南
查看>>
如何用Uber JVM Profiler等可视化工具监控Spark应用程序?
查看>>
Airbnb React/JSX 编码规范
查看>>
专访刘刚:360手机卫士的性能监控与优化
查看>>
百度发布开源智能边缘计算平台OpenEdge
查看>>
持续交付模型中文化转型的重要意义
查看>>
苹果iPhone X内置定制化神经引擎处理器
查看>>
每日7千次的跨部门任务调度,有赞怎么设计大数据开发平台?
查看>>
仅售99美元!英伟达发布最小AI计算机Jetson Nano
查看>>
SVG精髓(1)
查看>>