描述:在vue的data属性中,定义了一个数组,然后这个数组需要在html中渲染,你需要在watch属性中修改了某个值,在html中显示。

问题:为什么渲染不了?

:跟vue的响应式原理有关(我瞎说的)

解决方案:

方法一:(推荐)

用this.$forceUpdate()强制刷新,官方文档定义:迫使组件实例重新渲染。注意它仅仅影响实例本身和插入插槽内容的子组件,而不是所有子组件

export default {data(){return {arr:['张三','李四','王五','赵六']}}watch: {arr:{immediate:truedeep:truehandler(v) {this.arr[0] = '熊二'this.$forceUpdate()//如果修改data中数组(根据下标)的某个值,要强制刷新}}}
}

方法二:(推荐)

用$set()方法,一参是数组,二参是下标,三参是值

export default {data(){return {arr:['张三','李四','王五','赵六']}}watch: {arr:{immediate:truedeep:truehandler(v) {this.$set(this.arr, 0, '熊二')}}}
}

方法三:(不推荐)

直接换掉整个数组

2021/11/11更新

重点

this.$forceUpdate()与this.$set()的区别?

this.$forceUpdate()强制性刷新dom(全局)性能消耗高,触发updated生命周期

this.$set()对数组和对象赋值,并监听,指定性刷新,性能消耗低

踩坑:套入多个循环后,用this.$forceUpdate()刷新不了,用this.$set()就可以刷新,咱啥也不懂,啥也不敢问

PS:vue中的watch属性具体怎么用,传送门

vue的watch:{}属性用法handler(v){},immediate,deep_是泡沫呀的博客-CSDN博客

在vue中修改数组某个元素,值变了,渲染不了相关推荐

  1. vue快速修改数组的某个值_详解vue组件三大核心概念

    前言 本文主要介绍属性.事件和插槽这三个vue基础概念.使用方法及其容易被忽略的一些重要细节.如果你阅读别人写的组件,也可以从这三个部分展开,它们可以帮助你快速了解一个组件的所有功能. 本文的代码请猛 ...

  2. vue中删除数组元素

    vue中删除数组元素 let arr = [{ name: 'aa',id: 11},{name: 'bb',id: 12} ] 1.filter arr = arr.filter(t => t ...

  3. js入门·表单详解一(修改表单属性,修改表单元素值)

    实在javascript入门·Document对象入门讲解(访问表单,创建新页,获取页标题) 一文中,我们已经把表单的一些基本访问等弄清楚了,下面我们深入的学下表单的属性以及对表单元素的简单操作! 演 ...

  4. c编程:求出4#215;4矩阵中最大和最小元素值及其所在行下标和列下标,求出两条主对角线元素之和。...

    //求出4×4矩阵中最大和最小元素值及其所在行下标和列下标,求出两条主对角线元素之和 #include <stdio.h> int main() {int sum=0;int max,mi ...

  5. vue中动态获取dom元素进行操作

    这几天我远程面试了一家公司,期间问题我都回答上来了 但有一个问题我很纳闷 就是你说下vue中获取dom元素的方法吧 我说大体上俩中吧  1.vue中 ref的方法 给元素起一个ref名称 通过  th ...

  6. 在vue中修改浏览器图标和名字

    在vue中修改浏览器图标和名字 vue中,网页图标默认使用的是vue自带的一个icon的图标,也是vue的logo. 下面整理了几种改变标题和图标的方法 1.修改图标样式 01.使用图片 这个方法是可 ...

  7. Vue中foreach数组与js中遍历数组的写法

    场景 Vue中使用Axios发送get或者post请求,发送请求时需要在js中 对请求参数进行遍历并处理. 接收响应时需要对响应结果进行遍历和处理. 注意区分在vue和js中foreach数组的区别. ...

  8. PHP运算符 - 对象的方法或者属性, =数组的元素值

    ->用于取对象的方法或者属性,  =>用于取数组的元素值. 转载于:https://www.cnblogs.com/npk19195global/p/4490756.html

  9. vue中使用v-if出现的值回显不了的问题

    vue中使用v-if出现的值回显不了的问题 这样会有其中某一个值回显不了 的问题, 去掉v-if可以正常回显 加上之后会莫名不回显 解决方法:外边包个div就可以了 如果还解决不了 div别再太外围 ...

  10. vue 中遍历数组对象 存到一个新数组里

    vue 中遍历数组对象 存到一个新数组里(亲测可行!!!) 参考文档 : MDN-解构赋值 方法一 : For of 迭代和解构 var people = [{name: 'Mike Smith',f ...

最新文章

  1. Python工程的文档结构
  2. C语言程序设计之编程求鸡和兔的只数,用穷举法解决
  3. 基于连通域字符分割的流程_基于OpenCV及连通域分析进行文本块分割
  4. STM32开发 -- CRC校验码
  5. 【MySQL性能优化】MySQL分库分表与水平分割取模案例(三)
  6. 车辆跟驰模型matlab代码实现_MATLAB——考虑驾驶员特性及前车速度的快速路模型...
  7. 耳机不支持android,安卓手机为什么不能用EarPods耳机 原因分析【图解】
  8. python treeview显示多列_Python Gtk TreeView列数据显示
  9. 已重置默认应用设置html,win10已重置应用默认设置一直弹怎么办_win10已重置应用默认设置老是弹出解决方法...
  10. Tricks(二十九)—— 2^10000 的位数
  11. unity3d改变物体的中心位置_Unity3d粒子特效:制作火焰效果
  12. linux字符串替换命令,Linux使用sed命令替换字符串教程
  13. python练习-prat1
  14. manjaro/arch chrome an application wants access to the keyring default keyring but it is locked 解决
  15. C# 扫描枪扫描条形码与二维码
  16. Java算术右移和逻辑右移
  17. 类似ftp文件服务器有哪些,FTP的替代品有哪些,你知道吗?
  18. csv文件中文乱码转换
  19. 目标检测中anchor的概念
  20. 单片机I/O口的结构的详解

热门文章

  1. 闲暇时间做的一个亲属关系计算器
  2. nmon监控工具使用(打开nmon文件出现  运行时错误13类型不匹配)
  3. 简易解inode802.1x认证实战(6)交叉编译
  4. 如何压缩jpg图片的大小,操作简单的两个方法都教给你。
  5. keras LSTM实现imdb电影评论文本二分类
  6. HBuilder X运行到微信小程序报错 [微信小程序开发者工具] Error: read EBADF
  7. 计算机软件毕业论文周记,毕业论文写作周记范文共12周
  8. 拓扑图是什么?常见网络逻辑拓扑结构
  9. LeetCode 求和问题总结(2sum,3sum,ksum)
  10. 两篇文章的相似度比较