Skip to content

LimeScan

  • lime-scan 华为统一扫码(ScanKit)插件,只支持单码模式,兼容安卓/ios/鸿蒙(未测)/H5扫码使用zxing实现扫码(二维码、条形码)

安装

插件市场入口 导入后,引入插件在页面上再自定义基座后使用。

基础使用

html
<view style="padding: 30rpx 0;">扫描结果:{{result}}</view>
<button type="primary" @click="scan">开启扫描</button>
import {scanCode, ScanCodeOption} from '@/uni_modules/lime-scan';

export default {
	data() {
		return {
			type: '',
			result: '',
		}
	},
	methods:{
		scan() {
			scanCode({
				success: (res)=> {
					this.result = res.result
					console.log('res', res.scanType)
				}
			} as ScanCodeOption)
		}
	}
}

生成二维码

仅APP端支持(ios、安卓、鸿蒙)

js
import { createQRCode, CreateQRCodeOptions } from '@/uni_modules/lime-scan';
createQRCode({
	width: 300,
	height:300,
	content: 'limeui.qcoon.cn',
	success(src: string) {
		qrcode.value = src
	}
} as CreateQRCodeOptions)

鸿蒙NEXT使用

代码已实现,但因没有设备测试,故不敢保证能用。

H5端使用

H5端使用了@zxing/library实现,这个库识别率一般般,可以扫二维码,条形码。

  • 1、移动端访问摄像头权限需要 https 协议
  • 2、上传图片解码 带logo的码 识别不了,扫码可以。

由于需要https协议, 本地开发时, vite 可以安装@vitejs/plugin-basic-ssl并配置https协议

js
pnpm i @vitejs/plugin-basic-ssl -D

vite.config.ts中配置

js
import basicSsl from '@vitejs/plugin-basic-ssl'
import uni from '@dcloudio/vite-plugin-uni';
import { defineConfig } from 'vite';
export default defineConfig({ 
	server: { 
		https: true 
	}, 
	plugins: [ basicSsl(), uni()] 
})

源代码

组件源码