当前位置: 首页 > 知识库问答 >
问题:

前端 - 根据正则匹配出正确数据,返回值无效?

郗河
2023-09-14

子组件匹配父组件传来的sn值

regeMatch1 (sn) {      const pattern = /^[A-Za-z0-9]+$/gi      if (sn !== '' && sn !== null) {        if (pattern.test(sn)) {          console.log('符合')          return sn        } else {          console.log('不符合')          return (sn = '')        }      }    }

在mounted中调用

 mounted () {    console.log(this.titlelist.sn, 11111)    this.regeMatch(this.titlelist.sn)  },

绑定数据的标签

<span class="cell" style="height: fit-content;line-height: 1;flex: 2;">{{ titlelist.sn }}</span>

父组件传值

  props: {    datalist: {      type: Array,      default: () => []    },    titlelist: {      type: Object,      default: () => { }    }  },

打印输出
image.png
已经成功匹配了,但是sn值没有改为空字符

共有3个答案

丁兴德
2023-09-14

??
有没有一种可能,
你丢进函数的是字符串不是地址 ...

不会做赋值,
你需要把函数的输出丢到数据里

黄君博
2023-09-14
<span class="cell" style="height: fit-content;line-height: 1;flex: 2;">{{ localSN }}</span>
export default {  props: {    datalist: {      type: Array,      default: () => []    },    titlelist: {      type: Object,      default: () => { }    }  },  data() {    return {      localSN: ''    };  },  methods: {    regeMatch1(sn) {      const pattern = /^[A-Za-z0-9]+$/gi;      if (sn !== '' && sn !== null) {        if (pattern.test(sn)) {          console.log('符合');          return sn;        } else {          console.log('不符合');          return '';        }      }    }  },  mounted() {    console.log(this.titlelist.sn, 11111);    this.localSN = this.regeMatch1(this.titlelist.sn);  }};
益稳
2023-09-14

regeMatch (sn) {

  const pattern = /^[A-Za-z0-9]+$/gi  if (sn !== '' && sn !== null) {    if (!pattern.test(sn)) {      console.log(sn)      return (sn = '')    } else {      return true    }  }}
 类似资料:
  • 问题内容: 我正在使用以下代码来解析yaml并应将输出作为对象,并且该函数应更改数据结构并根据以下结构提供输出 这是我尝试过的方法,但是我不确定如何从yaml中获取的值 替换 函数运行器中 的硬代码值 与来自 这就是我尝试过的所有想法,该怎么做? 问题答案: 将runners对象的名称分配给名称的struct 字段,并使用与名称匹配的函数命令将命令列表附加到type字段: 操场上的工作代码

  • 问题内容: 我试图做一个有条件的正则表达式,我知道堆栈溢出还有其他帖子,但是对这个问题太具体了。 如何创建仅在特定条件下才能匹配的正则表达式? 一个例子 例如,如果我们有一个字符串列表( 在java中 ): 并且我们只想匹配字符串末尾与开头相同数量的 在这个例子中我们想要什么 在此示例中,我们需要一个正则表达式来检查结尾处是否有与开始时相同数量的正则表达式。 条件部分 :如果开头有,则检查结尾是否

  • 写了一个最多匹配两位小数正则: /^(\d+)(.\d{1,2})?$/ 匹配结果如下: 为什么匹配1111.返回为true呢

  • 基本模式匹配 一切从最基本的开始。模式,是正则表达式最基本的元素,它们是一组描述字符串特征的字符。模式可以很简单,由普通的字符串组成,也可以非常复杂,往往用特殊的字符表示一个范围内的字符、重复出现,或表示上下文。例如: ^once 这个模式包含一个特殊的字符^,表示该模式只匹配那些以once开头的字符串。例如该模式与字符串"once upon a time"匹配,与"There once was

  • 该文件不被命名为“test.xlsx”,而是被命名为“download”,并且不被识别为Excel文件。 任何帮助都很感激。

  • 问题内容: 如果我在节点repl中执行此指令 它返回 我希望它返回前三个项目,其他值从何而来? 问题答案: 数组中的第一项是整个正则表达式匹配项(“组0”)。那当然是。 第二项是第一个捕获组的match的内容。这是又响了。 第三项是第二个捕获组的match的内容。那是之后的空字符串。 是比赛开始的位置-这是字符串的第一个字符。 向您显示执行regex的字符串,即。 很难找到关于此的文档(至少对我而