以下是使用在Single File Component上程序
一.在框架上載入vuelidate
import Vuelidate from 'vuelidate'
Vue.use(Vuelidate)
二.元件上使用
1.以mixin方式使用mixin加入
import { validationMixin } from 'vuelidate'
mixins:[validationMixin],
此時就可以在元件內加入validations來設定相關要驗證的規則
validations可以是物件
validations:{
}
也可以是method
validations(){
return {}
}
這時候在元件內就可以得到this.$v來操作相關
2.import所要用到的validator,
import { required, minLength,maxLength,numeric } from 'vuelidate/lib/validators'
3.透過$v.model名稱取得該model的即時狀態
依照取得的model狀態,來決定畫面要做如何的處置
三.Sample
<template>
<div>
<input type="password" v-model.trim="pwd">
<button v-if="isActiveForSend" @click="clickSendBtn">送出</button>
<span>這欄位所有狀態{{$v.pwd}}</span>
</div>
</template>
<script>
import { validationMixin } from 'vuelidate'
import { required, minLength,maxLength,numeric } from 'vuelidate/lib/validators'
export default {
mixins:[validationMixin],
validations(){
return {
pwd:{
required,
numeric,
minLength: minLength(6),
maxLength:maxLength(6)
}
}
},
computed:{
isActiveForSend(){
return this.$v.pwd.required&&this.$v.pwd.numeric&&this.$v.pwd.minLength&&this.$v.pwd.maxLength
}
},
}
</script>
沒有留言:
張貼留言