盘点绑定优化

This commit is contained in:
bb_pan 2025-07-18 17:06:02 +08:00
parent a0aafa6b96
commit 3f3638bcab
1 changed files with 11 additions and 9 deletions

View File

@ -1,5 +1,8 @@
<template> <template>
<div> <div>
<div style="margin-top: 30px; padding: 0 15px;">
<button type="primary" @click="onQrCode">扫码识别</button>
</div>
<ScanQrCode <ScanQrCode
ref="scanQrCodeRef" ref="scanQrCodeRef"
@scanSuccess="handleScanSuccess" @scanSuccess="handleScanSuccess"
@ -11,25 +14,27 @@
<script setup> <script setup>
import { ref, onMounted } from 'vue' import { ref, onMounted } from 'vue'
import ScanQrCode from '@/pages/devicesSearch/ScanQrCode.vue' import ScanQrCode from '@/pages/devicesSearch/ScanQrCode.vue'
import { onShow } from '@dcloudio/uni-app' import { onLoad } from '@dcloudio/uni-app'
const scanQrCodeRef = ref() const scanQrCodeRef = ref()
const qrCode = ref('') const qrCode = ref('')
onShow(() => { onLoad(() => {
// //
setTimeout(() => { setTimeout(() => {
if (scanQrCodeRef.value) scanQrCodeRef.value.scanQrCode() onQrCode()
}, 300) }, 300)
}) })
const onQrCode = () => {
console.log('🚀 ~ onQrCode ~ 二维码:')
if (scanQrCodeRef.value) scanQrCodeRef.value.scanQrCode()
}
// //
const handleScanSuccess = (result) => { const handleScanSuccess = (result) => {
qrCode.value = result?.text?.split('?qrcode=')[1] || result?.text qrCode.value = result?.text?.split('?qrcode=')[1] || result?.text
if (qrCode.value === '') { if (qrCode.value === '') {
uni.showToast({ title: '扫码识别失败', icon: 'none' }) uni.showToast({ title: '扫码识别失败', icon: 'none' })
setTimeout(() => {
if (scanQrCodeRef.value) scanQrCodeRef.value.scanQrCode()
}, 500)
} else { } else {
uni.navigateTo({ uni.navigateTo({
url: '/pages/inventoryBinding/qrCodeBinding?qrCode=' + JSON.stringify(qrCode.value), url: '/pages/inventoryBinding/qrCodeBinding?qrCode=' + JSON.stringify(qrCode.value),
@ -41,9 +46,6 @@ const handleScanSuccess = (result) => {
const handleScanError = (error) => { const handleScanError = (error) => {
console.error('扫描出错:', error.message) console.error('扫描出错:', error.message)
uni.showToast({ title: error.message, icon: 'none' }) uni.showToast({ title: error.message, icon: 'none' })
setTimeout(() => {
if (scanQrCodeRef.value) scanQrCodeRef.value.scanQrCode()
}, 500)
} }
</script> </script>