更新记录
1.0.0(2026-06-03)
下载此版本
1.0.0
- 新增车牌号输入键盘组件。
- 支持省份简称、字母数字输入、删除、完成和遮罩关闭。
- 新增车牌号规范化、格式化、校验工具函数。
平台兼容性
uni-app(3.7.8)
| Vue2 |
Vue3 |
Chrome |
Safari |
app-vue |
app-nvue |
Android |
iOS |
鸿蒙 |
| √ |
√ |
√ |
√ |
√ |
× |
√ |
√ |
- |
| 微信小程序 |
支付宝小程序 |
抖音小程序 |
百度小程序 |
快手小程序 |
京东小程序 |
鸿蒙元服务 |
QQ小程序 |
飞书小程序 |
小红书小程序 |
快应用-华为 |
快应用-联盟 |
| √ |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
qcwh-platekeyboard 车牌号专属输入键盘
适用于 uni-app 的车牌号输入键盘组件,按车牌输入顺序限制可选字符:
- 第一位展示省份简称。
- 第二位仅允许大写英文字母。
- 后续位允许大写英文字母和数字。
- 支持 7 位普通车牌和 8 位新能源车牌。
- 提供格式化、规范化、校验工具函数。
安装
从插件市场导入后,组件会放在:
uni_modules/qcwh-platekeyboard
组件符合 easycom 规范,页面中可直接使用:
<qcwh-platekeyboard />
基础用法
<template>
<view>
<view @tap="showKeyboard = true">
{{ formatPlateNumber(carNumber) || '请输入车牌号' }}
</view>
<qcwh-platekeyboard
v-model="carNumber"
:show="showKeyboard"
@update:show="showKeyboard = $event"
/>
</view>
</template>
<script setup>
import { ref } from 'vue'
import { formatPlateNumber, isValidPlateNumber } from '@/uni_modules/qcwh-platekeyboard'
const carNumber = ref('')
const showKeyboard = ref(false)
const submit = () => {
if (!isValidPlateNumber(carNumber.value, true)) {
uni.showToast({ title: '请输入正确的车牌号', icon: 'none' })
}
}
</script>
Props
| 属性 |
类型 |
默认值 |
说明 |
modelValue / value |
String |
'' |
当前车牌号,支持 Vue3 v-model 和 Vue2 value/input |
show |
Boolean |
false |
是否显示键盘 |
title |
String |
车牌号 |
键盘标题 |
placeholder |
String |
请选择或输入车牌号 |
未输入时的提示 |
confirmText |
String |
完成 |
完成按钮文案 |
themeColor |
String |
#189fdb |
高亮色 |
zIndex |
Number/String |
999 |
键盘层级 |
maxLength |
Number |
8 |
最大输入长度 |
maskClosable |
Boolean |
true |
点击遮罩是否关闭 |
provinceKeys |
Array |
内置省份键盘 |
自定义省份键盘布局 |
letterKeys |
Array |
内置字母数字键盘 |
自定义字母数字键盘布局 |
Events
| 事件 |
参数 |
说明 |
input |
value |
Vue2 v-model 更新 |
update:modelValue |
value |
Vue3 v-model 更新 |
change |
value |
车牌号变化 |
update:show |
show |
显隐状态变化 |
confirm |
value |
点击完成 |
close |
- |
键盘关闭 |
工具函数
import {
normalizePlateNumber,
formatPlateNumber,
isValidPlateNumber
} from '@/uni_modules/qcwh-platekeyboard'
| 函数 |
说明 |
normalizePlateNumber(value, maxLength = 8) |
去空格、去间隔点、转大写、截断长度 |
formatPlateNumber(value, maxLength = 8) |
格式化为 浙A · 12345 样式 |
isValidPlateNumber(value, required = false) |
校验普通/新能源车牌号 |
发布注意
上传插件市场时,只需要提交 uni_modules/qcwh-platekeyboard 目录。不要包含项目根目录的 manifest.json、pages.json、App.vue、main.js,也不要包含 node_modules、unpackage、.git 等目录。