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

前端 - el-cascader点了第二次的值替换第一次的值,第三次替换上一次的值,以此类推?

东郭子默
2024-04-10
 <el-form-item label="区县" prop="area">    <el-cascader      :options="AreaByCity"      v-model="ruleForm.area"      :props="AreaCity"      placeholder="请选择区县"      ref="cascaderAddrs"      style="width: 100%"      clearable      @change="handleChangeareaCity"    ></el-cascader>  </el-form-item>handleChangeareaCity(val) {  let newitems = this.$refs['cascaderAddrs'].getCheckedNodes()[0].pathLabels  const newInputValue = newitems[0]  this.ruleForm.address = this.ruleForm.address + newInputValue},

newitems[0]是直接拿到了区县的值了,现在是点击了区县追加给给this.ruleForm.address,现在点了第一个是正常的,第二次点击会追加、第三次也是点也是会追加,这不是我想要的效果

想要的效果是 点了第一次的值,赋给this.ruleForm.address,点了第二次就把第一次的值替换,第三次替换上一次的值,大佬们这个 要怎么弄呢?

共有1个答案

房项禹
2024-04-10
el-cascader 点了第二次的值替换第一次的值,第三次替换上一次的值,以此类推

从这个描述来看,一般来说就是失去响应式监听。因为现在只是局部的代码块,不知道你是从哪里失去的监听。
如果可以的话 this.ruleForm.address = this.ruleForm.address + newInputValue 这种赋值操作最好是用 $set() 来做。
因为如果 this.ruleForm 如果一开始没有 address 这个变量值,你这样直接赋值就不会被监听变更。

 类似资料:
  • 我想将数据帧列中的一个值替换为另一个值,我必须对许多列执行此操作(假设30/100列) 我已经经历过这个和这个了。 我可以在y列和z列中分别用Null替换“baz”。但我想对所有列都这样做——类似于下面的列表理解方式

  • 代码如下: 问题如下 期望每次提交 得到的值 是不同的,谢谢大佬们

  • 问题内容: 我有一些示例字符串。如何用空字符串替换长字符串中第一次出现的该字符串? 问题答案: 字符串replace()函数可以完美解决此问题: string.replace(s,old,new [,maxreplace]) 返回字符串s的副本,其中所有出现的子字符串old都替换为new。如果给出了可选参数maxreplace,则替换第一个出现的maxreplace。

  • 我有一个1D数组在Numpy和我想找到的索引的位置,其中一个值超过了Numpy数组中的值。 例如。 在中查找超过值的位置。

  • 所以我有这样的代码: 如你所见,如果我按“A”,它将用“E”代替“A”。但这就像多米诺骨牌效应:它现在检测“e”,并将其替换为“i”,以此类推,直到它得到“y”。我如何防止这种情况? 注意:我不擅长regex所以请试着解释一下。