最近做项目时(vue2.0)遇到此坑耗费不少时间,分享如下:

data中定义初始结构:

data:function(){
    return {
        optionsArr: [{name: '', edit: false}],
  }
}
1
2
3
4
5
script中:

for (let i = 0; i < this.flow.dicts.length; i++) {
  this.optionsArr[i] = {name: this.flow.dicts[i].label, edit: false}
}  
console.log(this.optionsArr)
1
2
3
4

修改为:

for (let i = 0; i < this.flow.dicts.length; i++) {
   //即采用push去添加元素
  this.optionsArr.push({name: that.flow.dicts[i].label, edit: false})
}
console.log(this.optionsArr)
1
2
3
4
5

template中:
想通过点击事件改变edit为true

<li v-for="(option,index) in optionsArr">
     <span v-show="!option.edit"  v-on:click="option.edit = !option.edit">{{option.name}}</span>
 </li>
1
2
3
用这两种方法,optionsArr最后都是长度为二的数组,但是push添加的元素具有set和get方法,这样想通过点击改变edit值时可以生效的,而直接赋值添加的元素点击改变edit不生效,在vue的点击事件改变某属性时这是需要特别注意的问题。
--------------------- 
版权声明:本文为CSDN博主「wangbinXMU」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wangbinxmu/article/details/79872037

转载于:https://my.oschina.net/u/3358860/blog/3090046

VUE中数组赋值push与=的区别相关推荐

  1. Vue中数组赋值问题

    出现的问题 昨天工作内遇到的问题,用输入arrList渲染了一个表格,修改了arrList,然而列表没有改变. Vue 不是双向绑定吗?怎么回事?what's fuck 值变了? 列表没有变??? 测 ...

  2. python定义数组并赋值_python中的数组赋值与拷贝的区别详解

    具体的注解我已经写在了程序里面:通俗的解释了python里面的浅拷贝与深拷贝的不同,请看程序. # -*- coding: utf-8 -*- import numpy as np import co ...

  3. Vue中数组变动监听

    Vue中数组变动监听 Vue的通过数据劫持的方式实现数据的双向绑定,即使用Object.defineProperty()来实现对属性的劫持,但是Object.defineProperty()中的set ...

  4. vue中数组的七个响应式方法

    vue中数组的七个响应式方法 起因: ​ 在使用vue实习中,通过数组的索引改变了数组中的值,测试时发现,更改成功了,但是试图无响应. 原因: *通过索引值修改数组元素,不是响应式方法* // 以下代 ...

  5. 从编译器角度分析C语言中数组名和指针的区别

    从编译器角度分析C语言中数组名和指针的区别 数组名和指针是两个往往很容易让人们混淆的概念,很多人以为数组名就是一个指针,也有很多人知道数组名不同于指针但是仅知道数组名的值不能像指针一样改变. 例如你可 ...

  6. java中数组赋值方法

    Java中数组赋值方法,以及为什么不能使用a = b //这里定义两个长度相同的数组,其中数组二为空 int[] arr1 = new int[]{1,2,3,4,5,6,0,0,0,0}; int[ ...

  7. Vue中this.$router.push路由跳转,刷新参数消失

    Vue中this.$router.push路由跳转,刷新参数消失 this.$router.push({name:"",params:{id:""}}) nam ...

  8. Vue中数组push问题

    最近在Vue框架中使用数组push遇到两个坑 1. 向数组中push后,无法获取到数组中的属性值 数组赋值: ...... res.data.forEach((item,index) => { ...

  9. php n维数组扁平化,js嵌套的数组扁平化:将多维数组变成一维数组以及push()与concat()区别的讲解...

    数组的扁平化:将多维数组变成一维数组 对于一个像这样的嵌套数组:a=[1,[2,[3,4]],5,6]我们想要把它变成一个一维数组,有下面几种方法: 方法一:递归一 function parseArr ...

最新文章

  1. 从RNA-seq结果到差异表达
  2. cleanmymac3.9.6 for mac_色轮插件配色神器Coolorus 2.6(win+mac)
  3. PHP下使用FPDF在PDF中插入图片
  4. PHP面试题:对于大流量的网站,您采用什么样的方法来解决访问量问题?
  5. Zookeeper选举算法( FastLeader选主)
  6. 【三边定位】 演示程序V0.1
  7. html安百分比布局,移动端百分比布局
  8. cmake编译gtest测试程序(三)
  9. python的内存模型
  10. RSync实现文件同步备份配置详解
  11. 软件著作权申请流程及模板
  12. HR:你为什么选择计算机这个行业?
  13. python基础编程第三版 pdf_python基础教程第三版 中文 高清 PDF
  14. vs运行程序时报错:“Stack around the variable XXX was corrupted”
  15. java实现Stripe信用卡支付
  16. 实验二 语音信号基本时频分析(待更改)
  17. git切换分支报错:error: pathspec 'origin/XXX' did not match any file(s) known to git
  18. RocksDB 概述
  19. 在学习c51单片机实验七(双机通信及pcb设计)操作Keil uVision4和protus的时候遇到的两个坑
  20. 为什么c语言没有输出

热门文章

  1. 有什么软件能每天提醒自己坚持吗?每日定时提醒做某事的便签
  2. mysql连接出错 mysqladmin flush-hosts 解决方法(mysqladmin 刷新主机解除阻塞)
  3. 孤独和寂寞也是一种美
  4. AACWallet 上线 小白也能一键发币啦
  5. MVC是什么?优点?
  6. 2021-11-4 socket的通信过程
  7. 嵌入式Linux应用开发学习(一)—嵌入式编程基本知识
  8. Libvirt同步机制 —— 实现原理
  9. E课网AHB-SRAMC
  10. mysql中comment(注释)的一些用法