vue 强制组件重新渲染(重置)的两种方案


Posted in Javascript onOctober 29, 2019

数据通过异步操作后,对之前刚加载的数据进行变更后,发现数据不能生效

方案一

当数据变更后,通过watch 监听,先去销毁当前的组件,然后再重现渲染。使用 v-if 可以解决这个问题

<template>
 <third-comp v-if="reFresh"/>
</template>
 
<script>
 export default{
 data(){
  return {
  reFresh:true,
  menuTree:[]
  }
 },
 watch:{
  menuTree(){
 
   this.reFresh= false
   this.$nextTick(()=>{
   
   this.reFresh = true
  })
  }
 }
}
</script>

这种方式虽然可以实现,太不优雅

方案二

通过vue key 实现,原理官方文档。所以当key 值变更时,会自动的重新渲染。

<template>
 <third-comp :key="menuKey"/>
</template>
 
<script>
 export default{
 data(){
  return {
  menuKey:1
  }
 },
 watch:{
  menuTree(){
 
  ++this.menuKey
  }
 }
}
</script>

以上这篇vue 强制组件重新渲染(重置)的两种方案就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript根据数据生成百分比图和柱状图的实例代码
Jul 14 Javascript
指定区域的图片自动按比例缩小的js代码(防止页面被图片撑破)
Feb 21 Javascript
jQuery之选项卡的简单实现
Feb 28 Javascript
让浏览器DOM元素最后加载的js方法
Jul 29 Javascript
jquery点击展示与隐藏更多内容
Dec 03 Javascript
AngulaJS路由 ui-router 传参实例
Apr 28 Javascript
JS和jQuery通过this获取html标签中的属性值(实例代码)
Sep 11 jQuery
weebox弹出窗口不居中显示的解决方法
Nov 27 Javascript
浅谈Vue.js 中的 v-on 事件指令的使用
Nov 25 Javascript
JS使用iView的Dropdown实现一个右键菜单
May 06 Javascript
JavaScript对象属性操作实例解析
Feb 04 Javascript
JS FormData对象使用方法实例详解
Feb 12 Javascript
javascript实现简单打字游戏
Oct 29 #Javascript
简单使用webpack打包文件的实现
Oct 29 #Javascript
vue 解决异步数据更新问题
Oct 29 #Javascript
VUE实现强制渲染,强制更新
Oct 29 #Javascript
js实现贪吃蛇小游戏
Oct 29 #Javascript
浅谈vue异步数据影响页面渲染
Oct 29 #Javascript
详解vue中多个有顺序要求的异步操作处理
Oct 29 #Javascript
You might like
php判断正常访问和外部访问的示例
2014/02/10 PHP
php7性能提升的原因详解
2019/10/13 PHP
JSON 和 JavaScript eval使用说明
2010/06/13 Javascript
js取滚动条的尺寸的函数代码
2011/11/30 Javascript
基于JavaScript制作霓虹灯文字 代码 特效
2015/09/01 Javascript
IE6-IE9使用JSON、table.innerHTML所引发的问题
2015/12/22 Javascript
JavaScript算法系列之快速排序(Quicksort)算法实例详解
2016/09/04 Javascript
javascript self对象使用详解
2016/10/18 Javascript
谈谈因Vue.js引发关于getter和setter的思考
2016/12/02 Javascript
浅谈vue自定义全局组件并通过全局方法 Vue.use() 使用该组件
2017/12/07 Javascript
QQ跳转支付宝并自动领红包脚本(最新)
2018/06/22 Javascript
vue.js实现格式化时间并每秒更新显示功能示例
2018/07/07 Javascript
vue.js图片转Base64上传图片并预览的实现方法
2018/08/02 Javascript
使用electron制作满屏心特效的示例代码
2018/11/27 Javascript
JS实现电话号码的字母组合算法示例
2019/02/26 Javascript
javascript json对象小技巧之键名作为变量用法分析
2019/11/11 Javascript
pyramid配置session的方法教程
2013/11/27 Python
python实现linux服务器批量修改密码并生成execl
2014/04/22 Python
pycharm 使用心得(六)进行简单的数据库管理
2014/06/06 Python
pycharm 取消默认的右击运行unittest的方法
2018/11/29 Python
树莓派动作捕捉抓拍存储图像脚本
2019/06/22 Python
Django 对IP访问频率进行限制的例子
2019/08/30 Python
Python面向对象封装操作案例详解 II
2020/01/02 Python
Python的in,is和id函数代码实例
2020/04/18 Python
HTML5 canvas基本绘图之绘制五角星
2016/06/27 HTML / CSS
HTML table 表格边框的实现思路
2019/10/12 HTML / CSS
Reebok官方旗舰店:美国知名健身品牌锐步
2019/01/07 全球购物
出国留学自荐信
2013/10/25 职场文书
公积金单位接收函
2014/01/11 职场文书
遗嘱继承公证书
2014/04/09 职场文书
《灰椋鸟》教学反思
2014/04/27 职场文书
优秀毕业生找工作自荐信
2014/06/23 职场文书
北京英文导游词
2015/02/12 职场文书
2015年大学生入党自荐书
2015/03/24 职场文书
爱心捐助活动总结
2015/05/09 职场文书
【海涛教你打dota】体验一超神发条:咱是抢盾专业户
2022/04/01 DOTA