更新记录

1.0.0(2025-01-07)

新版上架


平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
Android:5.0,iOS:11,HarmonyNext:不确定 × × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序 鸿蒙元服务
× × × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × × × × × × ×

特别提醒

  • 购买本插件前,请先试用、请先试用、请先试用,并充分自测确认满足需求之后再行购买。虚拟物品一旦购买之后无法退款;
  • 如有使用上的疑问、bug,可以进交流群联系作者;
  • 作者可承接各种插件定制;
  • 请在合法范围内使用,若使用本插件做非法开发,本方概不负责;
  • 结合文档和示例demo集成使用;

插件使用文档

说明:支持13种码制式,可自定义选择支持的码制,扫码时不传默认全部。

参数 对应码制格式
Code128 Code 128
Code39 Code 39
Code93 Code 93
Codabar Codabar
EAN-13 EAN-13
EAN-8 EAN-8
ITF14 ITF14
UPC-A UPC-A
UPC-E UPC_E
QR QR code
PDF417 PDF417
Aztec Aztec
DataMatrix DataMatrix

扫码

scanAction({
    params: {
    album: true,//是否需要扫描相册,iOS无效
    scanTypes: ["QR", "EAN-13", "Aztec"]//识别的码制式 可选参数,不传默认识别所以的码制式
    },
    success: (res => {
        console.log(res)
        //res.sceneType
        //码内容
        this.title = res.result
    })
})

构建码使用说明

// 调用同步方法示例
var filePath1 = plus.io.convertLocalFileSystemURL('_doc');
generatingCode({
    params: {
        width: 300,
        height: 300,
        codeContent: '6932607220526',
        formatValue: 'Aztec',
        filePath: filePath1
    },
    success: (RES => {
        this.imageResult = RES.filePath
    })
})

构建码参数有要求详情见官网

  • 参数说明
参数 值类型 说明
width int 宽度
height int 高度
codeContent String 内容
formatValue String 码制式(参照上方scanType表)
filePath String 码存储路径

删除指定路径下文件(图片)

deletePathFile({
    path: this.imageResult,//文件路径
    resultBackcall: (res => {
        if (res) {
            uni.showToast({
                title: '删除成功',
                icon: "none"
            })
        } else {
            uni.showToast({
                title: '删除失败',
                icon: "none"
            })
        }
    })
})

鸿蒙端没有真机不确定能不能用,代码已经写了

  • 示例代码
<template>
    <view class="content">
        <image class="logo" :src="imageResult"></image>
        <view class="text-area">
            <text class="title" @click="scan()">扫码</text>
            <text class="title" style="margin: 40rpx 0;" @click="generatingCodeAction()">生成码</text>
            <text style="margin-top: 100rpx;" class="title">扫码结果:{{title}}</text>

            <view @click="deletePathFileAction()"
                style="margin-top: 100rpx;background-color: burlywood;padding: 10rpx;">删除指定路径图片
            </view>
        </view>
    </view>
</template>

<script>
    // 导入要使用的插件  
    import {
        scanAction,
        generatingCode,
        ScanApiOptions,
        GeneratingCodeOptions,
        ScanParams,
        ScanFormatTypeCode, //码制式
        deletePathFile
    } from "@/uni_modules/yt-uts-hwscan";
    export default {
        data() {
            return {
                title: 'Hello',
                imageResult: "/static/logo.png"
            }
        },
        onLoad() {

        },
        methods: {

            scan() {
                var filePath = plus.io.convertLocalFileSystemURL('_doc');
                scanAction({
                    params: {
                        album: true,
                        savePictureFilePath: filePath,
                        scanTypes: ["QR", "EAN-13", "Aztec"]
                    },
                    success: (res => {
                        console.log(res)
                        this.title = res.result
                    })
                })
            },

            generatingCodeAction() {
                // 调用同步方法示例
                var filePath1 = plus.io.convertLocalFileSystemURL('_doc');
                generatingCode({
                    params: {
                        width: 300,
                        height: 300,
                        codeContent: '6932607220526',
                        formatValue: 'Aztec',
                        filePath: filePath1
                    },
                    success: (RES => {
                        this.imageResult = RES.filePath
                    })
                })
            },
            deletePathFileAction() {
                // if (this.imageResult === "/static/logo.png") return;
                deletePathFile({
                    path: this.imageResult,
                    resultBackcall: (res => {
                        if (res) {
                            uni.showToast({
                                title: '删除成功',
                                icon: "none"
                            })
                        } else {
                            uni.showToast({
                                title: '删除失败',
                                icon: "none"
                            })
                        }
                    })
                })
            }
        }
    }
</script>

<style>
    .content {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .logo {
        height: 200rpx;
        width: 200rpx;
        margin-top: 200rpx;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 50rpx;
    }

    .text-area {
        display: flex;
        justify-content: center;
        flex-direction: column;
        align-items: center;
    }

    .title {
        font-size: 36rpx;
        color: #8f8f94;
    }
</style>

隐私、权限声明

1. 本插件需要申请的系统权限列表:

相机、相册、文件读写

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问