uniapp 小程序扫描二维码

项目需求

扫描提供的二维码,获得二维码中相关信息。

解决方案

使用uni.scanCode(),调用小程序中的扫码功能。

<script>
	export default {
		data() {
			return {
				
			}
		},
		onLoad() {

		},
		methods: {
			scanCode() {
				// 允许从相机和相册扫码
				uni.scanCode({
					scanType: ["qrCode"],
					success: (res) => {
						console.log(res);
						if (res.result) {
							const val = res.result;
						} else {
							console.log('请重新扫描');
							return false;
						}
					},
					fail: (res) => {
						console.log('未识别到二维码');
					}
				})
			},
      // 对扫码后,得到的url地址参数的处理。
      parseUrl(url) {
				let pattern = /(\w+)=([0-9a-zA-Z\u4e00-\u9fa5]+)/ig;
				let parames = {};
				url.replace(pattern, function(a, b, c) {
					parames[b] = c;
				});
				return parames;// 返回一个参数名:参数值 的对象。
			},
		}
	}
</script>

uni.scanCode

参数名 类型 必填 说明
onlyFromCamera Boolean 是否只能从相机扫码
scanType Array 扫码类型,barCode(一维码)、qrCode(二维码)
success Function 接口调用成功的回调,result:扫码的内容。
fail Function 接口调用失败的回调函数(识别失败、用户取消等情况下触发)
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

点赞 评论 收藏 ~~ 有疑惑的小伙伴,可能是我表达不清楚,可以留言讨论,如有错误,也希望大家不吝指出。 ~~ 点赞 评论 收藏

你可能感兴趣的:(uniapp,小程序,小程序,vue.js,前端)