美文网首页Vue.js专区Vue.jsWeb前端之路
vue:使用vux-ui自定义表单验证

vue:使用vux-ui自定义表单验证

作者: Lucia_Huang | 来源:发表于2018-05-10 10:00 被阅读68次

    初学框架vue搭配vux使用发现这个UI库使用有些力不从心。下面说说自己在表单验证过程遇到的两个需求问题及解决的方法。

    1.使用x-input组件可知,官方只给了三种类型的is-type验证器,分别是:email,china-name,china-mobile,其他需要自己自定义验证器,怎么写验证器?

    解决方法:自定义is-type验证器(试验过可以在valid使用正则验证)

    <x-input type="number" v-model="code" placeholder="请输入验证码" :is-type="codeValue" />
    
    export default {
        data() {
            return{
                code: '',
                codeValue: function(value){
                    return {
                        valid: value.length === 4,
                        msg: "验证码有误!"
                    }
                }
            }
        }
    }
    
    2.表单内容都填写无误之后,提交表单的按钮才能被触发(如图)
    输入框为空时,“完成”按钮状态
    输入内容有误时,“完成”按钮状态
    输入格式正确时,“完成”按钮状态
    解决方法:使用x-input组件的@on-change事件,及ref属性
    <x-input type="number" v-model="code" placeholder="请输入验证码" :is-type="codeValue" ref="refcode" @on-change="keyDown" />
    <x-button action-type="submit" :disabled="disabled">完成</x-button>
    
      export default {
            data() {
                return{
                    code: '',
                    disabled: true,
                    codeValue: function(value){
                        return {
                            valid: value.length === 4,
                            msg: "验证码有误!"
                        }
                    }
                }
            },
            methods: {
                keyDown(){
                    if(this.$refs.refcode.valid == true && this.code != ''){
                        this.disabled = false;
                    }else{
                        this.disabled = true;
                    }
                }
            }
        }
    

    以上是我在使用vux表单验证时遇到的需求问题,虽然不是什么难点,但是很实用~

    有更好的方法欢迎各位留言~

    相关文章

      网友评论

        本文标题:vue:使用vux-ui自定义表单验证

        本文链接:https://www.haomeiwen.com/subject/gmonrftx.html