Skip to content

CodeInput 验证码输入框

介绍

一般用于验证用户短信验证码的场景,该组件参考了 uview-ui 的 验证码输入框

基础用法

html
<template>
  <nut-code-input v-model="state.val1" />
</template>

横线模式

html
<template>
  <nut-code-input v-model="state.val1" mode="line" />
</template>

设置长度

html
<template>
  <nut-code-input v-model="state.val2" :maxlength="6" />
</template>

横线间距

html
<template>
  <nut-code-input v-model="state.val2" :space="0" />
</template>

调整颜色

html
<template>
    <nut-code-input v-model="state.val3" hairline custom-color="#f56c6c" border-color="#f56c6c" />
</template>

快捷选择-范围选择

html
<template>
  <nut-code-input @change="change" @finish="finish" />
</template>
<script lang="ts">
import { reactive, toRefs } from 'vue';
export default {
  setup() {
    function change(e: any) {
     console.log(`内容改变,当前值为:${e}`)
    }
    function finish(e: any) {
     console.log(`输入结束,当前值为:${e}`)
    }
    return {
      change
      finish
    };
  }
}
</script>

API

Props

参数说明类型默认值
v-model输入值,双向绑定string-
adjustPosition键盘弹起时,是否自动上推页面Booleanfalse
maxlength输入字符个数String | Number4
dot是否用圆点填充booleanfalse
mode选择样式为边框或者横线box | linebox
hairline是否细边框Booleanfalse
space字符间的距离String | Number10
focus是否自动获取焦点Booleanfalse
custom-color字体颜色String#606266
font-size字体大小,单位rpxString | Number18
size输入框的大小,宽等于高String | Number35
disabledKeyboard禁止点击输入框唤起系统键盘Booleanfalse
border-color边框和线条颜色String#c9cacc
disabledDot是否禁止输入"."符号booleantrue

Events

事件名说明回调参数
change输入内容发生改变时触发,具体见上方说明string
finish输入字符个数达maxlength值时触发,见上方说明string

主题定制

样式变量

组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 ConfigProvider 组件

名称默认值
--nut-code-input-cursor-widthvar(--nut-code-input-cursor-width)
--nut-code-input-cursor-heightvar(--nut-code-input-cursor-height)
--nut-code-input-cursor-animation-duration1s
--nut-code-input-cursor-animation-namenut-cursor-flicker
--nut-code-input-content-colorvar(--nut-code-content-color)

MIT Licensed