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