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

初学框架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表单验证时遇到的需求问题,虽然不是什么难点,但是很实用~

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,747评论 19 139
  • HTML表单 在HTML中,表单是 ... 之间元素的集合,它们允许访问者输入文本、选择选项、操作对象等等,然后将...
    兰山小亭阅读 8,695评论 2 14
  •   JavaScript 最初的一个应用,就是分担服务器处理表单的责任,打破处处依赖服务器的局面。   尽管目前的...
    霜天晓阅读 3,899评论 0 3
  • 上文中,我们已经搞定路径等问题 1、定义UI界面的布局 这里有个错误,资源路径少写了“/“”。 2、设置启动资源加...
    元宇宙协会阅读 3,427评论 0 1
  • 什么是流媒体? 1.流媒体是指采用流的方式在Internet播放的格式。 2.流媒体指在Internet/Intr...
    司徒新新阅读 4,225评论 0 4