问答

element ui表单验证时遇到的问题

作者:admin 2021-05-09 我要评论

为什么我把那个result全部写在if的括号里面,就不行。 单独拿出来就可以呢? 如图: ` let checkWords = (rule, value, callback) = { console.log(value) if (v...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

为什么我把那个result全部写在if的括号里面,就不行。
单独拿出来就可以呢?
如图:
image.png
` let checkWords = (rule, value, callback) => {

  console.log(value)
  if (value === '') {
    this.$message.warning('关键词不能为空!')
    return callback(new Error('关键词不能为空!'))
  }
  let regBox = { regWords: /^([\u4e00-\u9fa50-9]+|[A-Za-z0-9]+)$/g }
  console.log('第一个条件')
  // console.log(regBox.regWords.test(value))
  let result = regBox.regWords.test(value)
  if (result === true) {
    return callback()
  } else {
    this.$message.warning('关键词格不能中英文混杂!不能有标点符号!!')
    return callback(new Error('关键词不能中英文混杂!不能有标点符号!'))
  }
}`
###

我之前遇到过一个问题,可能对你解决这个问题有帮助。

将带/g的正则表达式用变量存起来,去循环校验一组数据,本来应该是全部返回true,结果校验结果一会儿true,一会儿false,究其原因,其实是/g修饰符和lastIndex属性之间的微妙关系。

回到正题,如果你想把regBox.regWords.test(value)直接写在判断里,可以先把regWords里全局匹配修饰符g去掉再试试。希望对你有所帮助。

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • grom设置json默认值

    grom设置json默认值

  • Vue路由报错,看着没问题

    Vue路由报错,看着没问题

  • 思否邮箱登录为什么区分大小写了呢?

    思否邮箱登录为什么区分大小写了呢?

  • 有没有能够直接上传markdown文件作为博

    有没有能够直接上传markdown文件作为博

腾讯云代理商
海外云服务器