微信小程序 车牌号输入组件

概述

一个小组件,用于方便用户输入车牌号码

详细

概述

有时候我们开发过程中会遇到需要用户输入车牌号的情况,让客户通过自带键盘输入,体验不好且容易出错,例如车牌号是不能输入O和I的,因此需要有一个自定义的键盘,让客户输入正确的车牌号

详细

效果展示

实现思路

1 布局设计

复制代码
    让输入的框弹出,方便输入
    <view wx:for="{{inputList}}" wx:key="*this" 
        class="{{item.type}} {{index === 1 || index === 8 ? 'border_right':''}} {{index === input_active_index ? 'input_active' : ''}}"
        bindtap="tapInput" data-index="{{index}}" data-item="{{item}}">
        {{item.value || ''}}
        </view>
        <view class="backward" bindtap="tapDel">
          <image class="icon_backward" src="/img/backward.svg"/>
        </view>
    css:
    .main {
      background: rgba(0, 0, 0, 0.6);
      height: 100vh;
      z-index: 999;
      position: fixed;
      top: 0px;
      width: 100%;
    }
    .main_panel {
      position: absolute;
      width: 100%;
      bottom: 0px;
    }

2 数据设计

把合法输入的字符,列出来

复制代码
    provinceList: '京沪粤津浙苏湘渝云豫皖陕桂新青琼闽蒙辽宁鲁晋吉翼黑甘鄂赣贵川藏使'.split(''),
        numberList: '0123456789ABCDEFGHJKLMNPQRSTUVWXYZ挂港澳警领学'.split(''),

3 使用组件

复制代码
    在json文件中引用
    {
      "usingComponents": {
        "carnum_input": "/component/carnumber_input/carnumber_input"
      }
    }
    定义好监听车牌输入,输入框关闭的事件,即可获取输入内容
    <carnum_input 
        show="{{showCarnumInput}}" 
        bind:getCarNumber="getCarNumber"
        bind:closeCarNumberInput="closeCarNumberInput"/>

工具类介绍

viewtools.wxs 主要作用是补0,让界面好看些,如果有需要可以在这里改逻辑实现

复制代码
    module.exports = {
      // 把车牌字符串转为数组
      getCarNumberList: function (carNum) {
        var ret = '  •     ';
        if (!carNum || carNum.trim() === '' || carNum === undefined) return ret;
        var supplementNumber = 9 - carNum.trim().length;
        for(var i = 0; i < supplementNumber; i++) {
          carNum+=' '
        }
        ret = carNum;
        return ret;
      }
    }

目录结构

相关推荐
计算机程序设计小李同学1 天前
婚纱摄影集成管理系统小程序
java·vue.js·spring boot·后端·微信小程序·小程序
幽络源小助理2 天前
SpringBoot+小程序高校素拓分管理系统源码 – 幽络源免费分享
spring boot·后端·小程序
Mr -老鬼2 天前
移动端跨平台适配技术框架:从发展到展望
android·ios·小程序·uni-app
内存不泄露2 天前
棋牌预约小程序系统论文
小程序
计算机徐师兄2 天前
Java基于微信小程序的食堂线上预约点餐系统【附源码、文档说明】
java·微信小程序·食堂线上预约点餐系统小程序·食堂线上预约点餐微信小程序·java食堂线上预约点餐小程序·食堂线上预约点餐小程序·食堂线上预约点餐系统微信小程序
说私域2 天前
短视频私域流量池的变现路径创新:基于AI智能名片链动2+1模式S2B2C商城小程序的实践研究
大数据·人工智能·小程序
毕设源码-邱学长2 天前
【开题答辩全过程】以 基于微信小程序的松辽律所咨询系统的设计与实现为例,包含答辩的问题和答案
微信小程序·小程序
+VX:Fegn08953 天前
计算机毕业设计|基于springboot + vue物流配送中心信息化管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·小程序·课程设计
说私域3 天前
B站内容生态下的私域流量运营创新:基于AI智能名片链动2+1模式与S2B2C商城小程序的融合实践
人工智能·小程序·流量运营
计算机毕设指导63 天前
基于微信小程序的钓鱼论坛系统【源码文末联系】
java·spring boot·mysql·微信小程序·小程序·tomcat·maven