vue2、vue3中使用$forceUpdate()

简介: vue2、vue3中使用$forceUpdate()

在vue.js中使用this.$forceUpdate()是强制更新方法,作用是触发vue的update方法。可以用在解决数据对象新增属性和数组新增数据,出现页面不渲染的问题。

在前端开发过程中数据处理尤为重要,在使用Vue时我们会事先定义好数据,数据中包含基本数据、对象、数组,其中对象中可能还会有数组,数组中也还会有数组或者对象,这样就形成了深结构数据。我们在给这些深层次的数据赋值或者给对象添加新的属性,页面上的数据并不会同步更新,这是因为受js的限制vue不能检测到对象属性的添加或者删除,所以vue不允许在已经定义好的数据上动态的添加新的属性值。针对此种情况,此时我们可以使用vue的强制刷新方法,在赋值完成之后调用this.$forceUpdate(),这样页面上就能加载我们改变的数据。

在vue2中直接

this.$forceUpdate()

在vue3中直接

import { getCurrentInstance, ComponentInternalInstance } from "vue";
setup(){
//解构赋值 设置别名that  也可不写  :that  直接ctx
//ctx 得到普通对象
//proxy得到响应式对象
// 推荐使用第二种proxy 严谨写法
// 第一种写法
    let {ctx:that, proxy}:any = getCurrentInstance()
  that.$forceUpdate()
// 第二种写法
  const { proxy } = getCurrentInstance() as ComponentInternalInstance
  proxy!.$forceUpdate()
}

参考:

http://t.csdn.cn/57Ghh

目录
相关文章
|
4天前
|
JSON 数据可视化 数据库
vue3+threejs+koa可视化项目——实现登录注册(第三步)
vue3+threejs+koa可视化项目——实现登录注册(第三步)
25 5
|
4天前
|
数据可视化 前端开发 JavaScript
vue3+threejs可视化项目——引入threejs加载钢铁侠模型(第二步)
vue3+threejs可视化项目——引入threejs加载钢铁侠模型(第二步)
41 3
|
4天前
|
JavaScript 数据可视化 算法
vue3+threejs可视化项目——搭建vue3+ts+antd路由布局(第一步)
vue3+threejs可视化项目——搭建vue3+ts+antd路由布局(第一步)
24 6
|
4天前
|
JSON 数据可视化 前端开发
vue3+threejs+koa可视化项目——模型文件上传(第四步)
vue3+threejs+koa可视化项目——模型文件上传(第四步)
15 7
|
4天前
|
JavaScript 前端开发 API
Vue 2 vs Vue 3:开发者之争,究竟选择哪个版本?
Vue 2 vs Vue 3:开发者之争,究竟选择哪个版本?
14 1
|
5天前
|
JavaScript 前端开发
vue3+ts+element home页面侧边栏+头部组件+路由组件组合页面教程
这是一个Vue.js组件代码示例,展示了带有侧边栏导航和面包屑导航的布局。模板中使用Element Plus组件库,包含可折叠的侧边栏,其中左侧有 Logo 和导航列表,右侧显示更具体的子菜单。`asideDisplay`控制侧边栏宽度。在`script`部分,使用Vue的响应式数据和生命周期钩子初始化路由相关数据,并从localStorage恢复状态。样式部分定义了组件的颜色、尺寸和布局。
13 1
|
6天前
|
JavaScript
vue2_引入Ant design vue
vue2_引入Ant design vue
11 0
|
13天前
|
JavaScript 算法 前端开发
vue3和vue2的区别都有哪些
【4月更文挑战第15天】Vue3与Vue2在响应式系统(Proxy vs. Object.defineProperty)、组件模块化(Composition API vs. Options API)、数据变化检测(Reactive API vs. $watch)、虚拟DOM算法(基于迭代 vs. 基于递归)及Tree-Shaking支持上存在显著差异。Vue3的改进带来了更好的性能和灵活性,适合追求新技术的项目。Vue2则因其成熟稳定,适合维护大型项目。选择版本需根据项目需求、团队情况和技术追求来决定。
14 0
|
14天前
vue3打包war压缩包配置
vue3打包war压缩包配置
19 0
|
5天前
|
JavaScript
【vue】如何跳转路由到指定页面位置
【vue】如何跳转路由到指定页面位置
8 0