Skip to content

NumberKeyboard - Vant 4

NumberKeyboard

Intro

The NumberKeyboard component can be used with PasswordInput component or custom input box components.

Install

Register component globally via app.use, refer to Component Registration for more registration ways.

js
import { createApp } from'vue'; import { NumberKeyboard } from'vant'; const app = createApp(); app.use(NumberKeyboard);

Usage

Default Keyboard

html
js
import { ref } from'vue'; import { showToast } from'vant'; exportdefault { setup() { const show = ref(true); constonInput = (value) => showToast(value); constonDelete = () => showToast('delete'); return { show, onInput, onDelete, }; }, };

Keyboard With Sidebar

html

IdNumber Keyboard

Use extra-key prop to set the content of bottom left button.

html

Keyboard With Title

Use title prop to set keyboard title.

html

Multiple ExtraKey

html

Random Key Order

Use random-key-order prop to shuffle the order of keys.

html

Bind Value

html
js
import { ref } from'vue'; exportdefault { setup() { const show = ref(true); const value = ref(''); return { show, value, }; }, };

API

Props

AttributeDescriptionTypeDefault
v-modelCurrent valuestring-
showWhether to show keyboardboolean-
titleKeyboard titlestring-
themeKeyboard theme, can be set to customstringdefault
maxlengthValue maxlength*numberstring*
transitionWhether to show transition animationbooleantrue
z-indexKeyboard z-index*numberstring*
extra-keyContent of bottom left key*stringstring[]*
close-button-textClose button textstring-
delete-button-textDelete button textstringDelete Icon
close-button-loadingWhether to show loading close button in custom themebooleanfalse
show-delete-keyWhether to show delete buttonbooleantrue
blur-on-closeWhether to emit blur event when clicking close buttonbooleantrue
hide-on-click-outsideWhether to hide keyboard when outside is clickedbooleantrue
teleportSpecifies a target element where NumberKeyboard will be mounted*stringElement*
safe-area-inset-bottomWhether to enable bottom safe area adaptationbooleantrue
random-key-orderWhether to shuffle the order of keysbooleanfalse

Events

EventDescriptionArguments
inputEmitted when a key is pressedkey: string
deleteEmitted when the delete key is pressed-
closeEmitted when the close button is clicked-
blurEmitted when the close button is clicked or the keyboard is blurred-
showEmitted when keyboard is fully displayed-
hideEmitted when keyboard is fully hidden-

Slots

NameDescription
deleteCustom delete key content
extra-keyCustom extra key content
title-leftCustom title left content

Types

The component exports the following type definitions:

ts
importtype { NumberKeyboardProps, NumberKeyboardTheme } from'vant';

Theming

CSS Variables

The component provides the following CSS variables, which can be used to customize styles. Please refer to ConfigProvider component.

NameDefault ValueDescription
--van-number-keyboard-backgroundvar(--van-gray-2)-
--van-number-keyboard-key-height48px-
--van-number-keyboard-key-font-size28px-
--van-number-keyboard-key-active-colorvar(--van-gray-3)-
--van-number-keyboard-key-backgroundvar(--van-white)-
--van-number-keyboard-delete-font-sizevar(--van-font-size-lg)-
--van-number-keyboard-title-colorvar(--van-gray-7)-
--van-number-keyboard-title-height34px-
--van-number-keyboard-title-font-sizevar(--van-font-size-lg)-
--van-number-keyboard-close-padding0 var(--van-padding-md)-
--van-number-keyboard-close-colorvar(--van-primary-color)-
--van-number-keyboard-close-font-sizevar(--van-font-size-md)-
--van-number-keyboard-button-text-colorvar(--van-white)-
--van-number-keyboard-button-backgroundvar(--van-primary-color)-
--van-number-keyboard-z-index100-

Enterprise-level mobile solution based on Vant