vue 重新渲染dom

当我们用 v-if="pane_persuser" 之类的属性值(true和false)在父页面来控制子页面弹窗打开关闭时,在第二次打开子页面时,子页面并不会重新执行mounted,也就不会重新执行我们写的某些函数来加载界面的值,这时候我们就需要强制重新加载子页面的dom。

方法如下:

如果需要强制重新渲染一个组件,可以使用key属性。当key改变时,Vue会认为这是一个不同的元素,并且会创建一个新的DOM节点替换旧的节点。

下面是一个简单的例子,在这个例子中,每当你点击按钮时,componentKey的值会增加,因此key属性会变化,Vue会认为<my-component>需要被重新渲染。这种方法可以强制Vue去重新渲染一个组件,从而更新其DOM。

javascript 复制代码
<template>
  <div>
    <button @click="refreshComponent">刷新组件</button>
    <my-component :key="componentKey"></my-component>
  </div>
</template>
 
<script>
export default {
  data() {
    return {
      componentKey: 0
    };
  },
  methods: {
    refreshComponent() {
      this.componentKey += 1;
    }
  }
};
</script>
相关推荐
小飞侠在吗1 小时前
vue props
前端·javascript·vue.js
DsirNg2 小时前
页面栈溢出问题修复总结
前端·微信小程序
小徐_23332 小时前
uni-app 也能远程调试?使用 PageSpy 打开调试的新大门!
前端·微信小程序·uni-app
大怪v2 小时前
【Virtual World 03】上帝之手
前端·javascript
用户841794814563 小时前
vxe-gantt 甘特图实现产品进度列表,自定义任务条样式和提示信息
vue.js
招来红月4 小时前
记录JS 实用API
javascript
别叫我->学废了->lol在线等4 小时前
演示 hasattr 和 ** 解包操作符
开发语言·前端·python
霍夫曼4 小时前
UTC时间与本地时间转换问题
java·linux·服务器·前端·javascript
VX:Fegn08954 小时前
计算机毕业设计|基于Java人力资源管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·后端·课程设计
DARLING Zero two♡4 小时前
浏览器里跑 AI 语音转写?Whisper Web + cpolar让本地服务跑遍全网
前端·人工智能·whisper