vue-livr
Vue LIVR plugin
2,276
| Install | |
|---|---|
npm install vue-livr |
|
| Latest Version: | 2.0.0 |
| License: | MIT |
| Last Updated: | Oct 14, 2021 |
| Links: | npm |
Maintainer: alejandro.moraga
Vue LIVR
Install
npm i -S livr
npm i -S vue-livr
Usage
In your script entry point:
import Vue from 'vue';
import VueLIVR from 'vue-livr';
Vue.use(VueLIVR, {
extraRules: {}, // Extra rules to be added
extendedErrors: false, // Patch rules to return extended error codes
errorHandlers: {}, // Error handler to each error code that LIVR returns, it will run only if extendedErrors = true
aliasedRules: [], // list of aliasedRules to register
});
Now you are all set to use the plugin.
Basic example
<input :class="{ invalid: errors.hasError('name')}" @blur="validate('name')" v-model="name" />
<span>errors.getError('name')</span>
import VueLIVR from 'vue-livr'
const livrRules = {
name: ['required', { max_length: 20 }],
};
export default {
data() {
return {
name: '',
};
},
mixins: [VueLIVR.mixin], // this will add a singleton this.$livr instance to your component
methods: {
validate(field) {
const { name } = this;
this.$livr.validate(livrRules, { name }, field);
},
},
};
Array example
<div v-for="(user, index) in users" :key="index">
<input
class="listing-units__input"
v-model="user.name"
@blur="validate('name', index)"
:class="{ invalid: errors.hasError('name', index) }"
/>
<span>{{errors.getError('name', index)}}</span>
</div>
<button @click="validateAll">Validate All</button>
const livrRules = {
users: [
'required',
{
list_of_objects: [
{
name: ['required', { min_length: 1 }],
},
],
},
],
};
export default {
data() {
return {
users: [{ name: '' }, { name: '' }],
};
},
methods: {
validate(field, index) {
const fieldName = `users[${index}].${field}[0]`;
this.$livr.validate(livrRules, this.users, fieldName);
},
validateAll() {
this.$livr.validateAll(livrRules, this.users);
},
},
};
Credits
- Based on Vee-validate's
License
MIT
Related Packages
Version History
| Version | Released | License |
|---|---|---|
| 2.0.0 | MIT | |
| 1.0.0 | MIT | |
| 0.2.5 | MIT | |
| 0.2.4 | MIT | |
| 0.2.2 | MIT | |
| 0.2.1 | MIT | |
| 0.2.0 | MIT | |
| 0.1.3 | MIT | |
| 0.1.1 | MIT | |
| 0.1.0 | MIT | |
| 0.0.5 | MIT | |
| 0.0.4 | MIT | |
| 0.0.3 | MIT | |
| 0.0.2 | MIT | |
| 0.0.1 | MIT |