1.1.0 • Published 3 years ago
v-formlize v1.1.0
Vue Form Bootstrap Validation
A biblioteca foi criada pensando na integracao com o bootstrap, mas ela pode ser utilizada como quiser. A maneira como foi feita, me ajuda muito nos projetos, então abaixo, vou explicar utilizar.
yarn add v-validator
ou
npm install v-validator
Importar as ações @blur, @input, @change
import { validateForm, onActions, Validator } from "v-validator";
export default {
data: () => ({
form:{
email: new Validator(["required", "email"]),
password: new Validator(["required"]),
cpf: new Validator(["required", "cpf"]),
},
}),
methods: {
...onActions // Aqui vai trazer os métodos onBlur, onInput, onChange e então serão validados na ação do usuário
}
}
Para chamar as acoes, apenas modifique o seu component
<b-form-group class="label" label="Email" label-for="input-email">
<b-form-input
id="input-email"
type="text"
placeholder="Digite o seu email"
:state="form.email.isValid"
@blur="onBlur(form.email)"
@input="onInput(form.email)"
@change="onChange(form.email)"
v-model="form.email.value"
/>
<b-form-invalid-feedback :state="form.email.isValid">
{{ form.email.messageError }}
</b-form-invalid-feedback>
</b-form-group>
Validando o formulario
<template>
<b-form-group class="label" label="Email" label-for="input-email">
<b-form-input
id="input-email"
type="text"
placeholder="Digite o seu email"
:state="form.email.isValid"
v-model="form.email.value"
/>
<b-form-invalid-feedback :state="form.email.isValid">
{{ form.email.messageError }}
</b-form-invalid-feedback>
</b-form-group>
</template>
import { validateForm, onActions, Validator } from "v-validator";
export default {
data: () => ({
form:{
email: new Validator(["required", "email"]),
password: new Validator(["required"]),
cpf: new Validator(["required", "cpf"]),
},
}),
methods: {
...onActions // Aqui vai trazer os métodos onBlur, onInput, onChange
handleSubmit(){
validateForm(this.form) // ou
validateForm(this.form, false) // Para apenas validar, sem o alterar o estado dos campos
}
}
}