美文网首页
在不影响方法默认传参情况下新增传参

在不影响方法默认传参情况下新增传参

作者: 4ANH | 来源:发表于2022-05-18 10:54 被阅读0次

在做iview表单验证时出现了一个问题,我的程序中多次用到了表单中对IP的校验,那我想做一个封装,能通过将IP传参后进行判断,于是就有了下面的方法


代码示例
//封装好的表单校验方法
const validateIP = (rule, value, callback, ip) => {
      if(ip) {
        let flag = true, valdata = ip.split("\n");
        var reg = /^((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.){3}(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])$/;
        for(var i=0;i<valdata.length;i++){
          if(!valdata[i].trim() || !reg.test(valdata[i])){
            flag = false
            callback(new Error('IP格式不正确'))
          } else if(flag && valdata.length <= i+1) {
            callback()
          }
        }
      } else callback('IP地址不能为空')
    }
//表单校验规则
ruleValidate: {
        ip: { 
          required: true,
          trigger: 'change,blur',
          validator: ((rule, value, callback) => {
            //这里是关键,使用闭包完成新参数的传入
            validateIP(rule, value, callback, this.record.ip)
          })
        }
      }
}

相关文章

  • 在不影响方法默认传参情况下新增传参

    在做iview表单验证时出现了一个问题,我的程序中多次用到了表单中对IP的校验,那我想做一个封装,能通过将IP传参...

  • 参数

    python默认从左到右匹配参数名 无默认值必须传参 允许通过变量名传参 ,此时变量位置不影响 def int(*...

  • Mybatis mapper文件中传递多个参数的4种方式

    方法1:顺序传参法 方法2:@Param注解传参法 方法3:Map传参法 方法4:Java Bean传参法

  • Vue脚手架下axios POST传参序列化方法

    Vue工程化项目下axios POST传参序列化方法 axios默认POST传参方式为Query String P...

  • Next.js 跳转传参并接收接参

    介绍路由传参,接参使用方法 传参 + 跳转页面接收参数 动态路由传参 + 跳转页面接收参数创建动态路由在pag...

  • 2021-12-12 Python-15

    1. 属性添加默认值 可以在 init 方法中对某个属性设定初始值,那么这种情况下,可以不用对形参进行传参。以之前...

  • spring mvc学习

    controller传参GET方法传参@requestParam(value="s",requried=false...

  • 微信小程序页面之间传参

    微信小程序页面之间的传参方法有四种 1.页面url传参2.data-属性传参3.缓存传参4.全局变量传参 1.页面...

  • vue - 路由带参跳转

    vue路由传参按照传参方式可划分为params传参和query传参; params传参分为在url中显示和影藏参数...

  • vue路由传参.md

    两种传参方法 1.命名路由传参(name, params方式) 2.路由路径传参(path, query方式...

网友评论

      本文标题:在不影响方法默认传参情况下新增传参

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