当前位置: 首页 > news >正文

♥ vue中$forceUpdate()

♥ vue中$forceUpdate()

1、认识

强制该组件重新渲染
鉴于 Vue 的全自动响应性系统,这个功能应该很少会被用到

$forceUpdate()迫使vue实例重新(rander)渲染虚拟DOM,注意并不是重新加载组件。

结合vue的生命周期,调用$forceUpdate后只会触发beforeUpdate和updated这两个钩子函数,不会触发其他的钩子函数。

它仅仅影响实例本身和插入插槽内容的子组件,而不是所有子组件

2、使用

Vue2 中针对对象与数组的一些特殊操作会导致视图没有更新。检测变化的注意事项 — Vue2.js
这时可以使用:

当在data里没有显示的声明一个对象的属性,而是之后给该对象添加属性,这种情况vue是检测不到数据变化的,可以使用$forceUpdate()

html:<span class="test">{{egData.value}}</span>
<el-button @click="changeData">改变</el-button>js:
egData: {}...changeData () {this.egData.value = 'oldValue'this.$forceUpdate()  // dom会更新
}

注意:

这种做法并不推荐,官方说如果你现在的场景需要用forceUpdate方法 ,那么99%是你的操作有问题,如上data里不显示声明对象的属性

后添加属性时正确的做法时用 vm.$set() 方法,所以forceUpdate请慎用

this.$forceUpdate(); 强制刷新

同等效果的:window.location.reload()

1、$forceUpdate()

2、$set()

3、$nextTick()

http://www.lryc.cn/news/118244.html

相关文章:

  • Java一般用于postgis空间数据库通用的增删查改sql命令
  • 【C++类和对象】类有哪些默认成员函数呢?(上)
  • (docker)mysql镜像拉取-创建容器-容器的使用【个人笔记】
  • 【时间格式引发的事故】
  • 【数据结构】栈及其实现
  • Linux命令200例:mount将文件系统挂载到指定目录下(常用)
  • 互联网摸鱼日报(2023-08-11)
  • 第十五章、【Linux】例行性工作调度
  • 基于Promise.resolve实现Koa请求队列中间件
  • 【结构型设计模式】C#设计模式之桥接模式
  • 【12】Git工具 协同工作平台使用教程 Gitee使用指南 腾讯工蜂使用指南【Gitee】【腾讯工蜂】【Git】
  • zookeeper增加IP白名单-安全设置
  • Mac 调试 ios safar
  • Linu网络服务NFS
  • 24届近5年同济大学自动化考研院校分析
  • 多源BFS
  • 自制电子农历
  • 解决nvm安装后,node生效但npm无效
  • Chrome DevTools 与 WebSocket 数据查看失焦的问题
  • Javascript 正则
  • C语言可变数组 嵌套的可变数组,翻过了山跨过了河 又掉进了坑
  • FFmpeg安装和使用
  • HTTP代理编程:Python实用技巧与代码实例
  • java调用第三方接口工具类 (HttpClientUtils.java)
  • f1tenth仿真设置
  • Technical debt (技术负债 / 技术债)
  • 【MATLAB第67期】# 源码分享 | 基于MATLAB的morris全局敏感性分析
  • ruby send call 的简单使用
  • 24聊城大学823软件工程考研
  • 勘探开发人工智能技术:机器学习(3)