A fully customizable, OTP(one-time password) input component built with Vue 2.x.
To install the latest stable version:
npm install --save @bachdgvn/vue-otp-input
Import to main.js:
import OtpInput from "@bachdgvn/vue-otp-input"; Vue.component("v-otp-input", OtpInput);
Code example:
<template> <div style="display: flex; flex-direction: row;"> <v-otp-input ref="otpInput" input-classes="otp-input" separator="-" :num-inputs="4" :should-auto-focus="true" :is-input-num="true" @on-change="handleOnChange" @on-complete="handleOnComplete" /> <button @click="handleClearInput()">Clear Input</button> </div> </template> <script> export default { name: 'App', methods: { handleOnComplete(value) { console.log('OTP completed: ', value); }, handleOnChange(value) { console.log('OTP changed: ', value); }, handleClearInput() { this.$refs.otpInput.clearInput(); }, }, }; </script> <style lang="less"> .otp-input { width: 40px; height: 40px; padding: 5px; margin: 0 10px; font-size: 20px; border-radius: 4px; border: 1px solid rgba(0, 0, 0, 0.3); text-align: center; &.error { border: 1px solid red !important; } } .otp-input::-webkit-inner-spin-button, .otp-input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; } </style>Name
<span>-</span>
would add -
between each input input-classes className (string) false none Style applied or class passed to each input. input-type string false "tel" Input type. Optional value: "password", "number", "tel". input-mode string false "text" Input type. Optional value: "text", "numeric", "decimal", "none". should-auto-focus boolean false false Auto focuses input on initial page load. Name
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4