Vue.js component for Cleave.js
Vue.js version | Package version | Branch |
---|---|---|
2.x | 2.x | 2.x |
3.x | 3.x | master |
v-model
value
raw
mode to get masked valuenpm install vue-cleave-component --save
<template>
<div>
<cleave v-model="cardNumber"
:options="options"
class="form-control"
name="card"/>
</div>
</template>
<script>
import Cleave from 'vue-cleave-component';
export default {
data() {
return {
cardNumber: null,
options: {
creditCard: true,
delimiter: '-',
}
}
},
components: {
Cleave
}
}
</script>
import {createApp} from 'vue';
import Cleave from 'vue-cleave-component';
// your app initilization logic goes here
const app = createApp({});
app.use(Cleave);
app.mount('#app');
This will register a global component <cleave>
The component accepts these props:
Attribute | Type | Default | Description |
---|---|---|---|
v-model | String / Number / null |
null |
Set or Get input value (required) |
options | Object | {} |
Cleave.js options |
raw | Boolean | true |
When set to false ; emits formatted value with format pattern and delimiter |
<!-- cleave.js -->
<script src="https://cdn.jsdelivr.net/npm/cleave.js@1"></script>
<!-- Vue.js -->
<script src="https://cdn.jsdelivr.net/npm/vue@3.2"></script>
<!-- Lastly add this package -->
<script src="https://cdn.jsdelivr.net/npm/vue-cleave-component@3"></script>
<script>
const app = Vue.createApp({});
app.use(VueCleave);
app.mount('#app');
</script>
>=18.9
and pnpm >=7.x
pre-installedpnpm install
npm start
__test__
foldernpm test
Please see CHANGELOG for more information what has changed recently.
If you feel this component heavy, then you can consider these packages.
MIT License