vue 里面的 $forceUpdate() 强制实例重新渲染操作


Posted in Javascript onSeptember 21, 2020

迫使 Vue 实例重新渲染。注意它仅仅影响实例本身和插入插槽内容的子组件,而不是所有子组件。

比如v-for里面数据层次太多, 修改过数据变了,页面没有重新渲染,需手动强制刷新。

for(...){
 ...
}
this.$forceUpdate();

补充知识:VUE项目中使用this.$forceUpdate();解决页面v-for中修改item属性值后页面v-if不改变的问题

页面展示:

vue 里面的 $forceUpdate() 强制实例重新渲染操作

实现效果:点击实现列表内容的展开、折叠。

代码:

<div class="invoice-list" v-for="(item,index) in invoiceData" :key="index">
 <div class="images"><img src="../../../../../static/images/invoice_pu.png" v-if="item.invoiceType == '0'"><img src="../../../../../static/images/invoice_zhuan.png" v-else-if="item.invoiceType == '1'"></div>
 <div class="text">
  <h3 v-if="item.invoiceType == '0'">增值税普通发票</h3>
  <h3 v-else-if="item.invoiceType == '1'">增值税专用发票</h3>
  <p><span>企业名称:</span>{{item.enterpriseName}}</p>
  <p><span>税号:</span>{{item.dutyParagraph}}</p>
  <transition name="fade">
  <div class="zhuanInfo" v-if="item.mark == true">
    <p><span>注册地址:</span>{{item.address}}</p>
    <p><span>联系电话:</span>{{item.contactNumber}}</p>
    <p><span>开户银行:</span>{{item.accountOpeningBank}}</p>
    <p><span>银行账号:</span>{{item.bankAccount }}</p>
  </div>
  </transition>
  <div class="zhuanMark" v-if="item.invoiceType == '1'">
   <p class="hideMark">
    <img src="../../../../../static/images/arrow_bottom.png" v-if="item.mark == false" @click="clickZhuanMark(index,$event)">
    <img src="../../../../../static/images/arrow_top.png" v-else @click="clickZhuanMark(index,$event)">
   </p>
  </div>
  <div class="list-radio"><input type="radio" value="" name="selectContact" @change="getInvoiceId(item.invoiceId)" /></div>
 </div>
</div>

v-for渲染出列表,在执行列表折叠展开时"clickZhuanMark" JS如下:

clickZhuanMark(val,event){
 this.invoiceData[val].mark = !this.invoiceData[val].mark;
 
},

可是实际并没有如设想的那样实现效果,之后修改代码:

vue 里面的 $forceUpdate() 强制实例重新渲染操作

添加this.$forceUpdate();进行强制渲染,效果实现。搜索资料得出结果:因为数据层次太多,render函数没有自动更新,需手动强制刷新。

以上这篇vue 里面的 $forceUpdate() 强制实例重新渲染操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
ie 处理 gif动画 的onload 事件的一个 bug
Apr 12 Javascript
用tip解决Ext列宽度不够的问题
Dec 13 Javascript
jQuery 选择表格(table)里的行和列及改变简单样式
Dec 15 Javascript
javascript中style.left和offsetLeft的用法说明
Mar 07 Javascript
jQuery实现“扫码阅读”功能
Jan 21 Javascript
JS加载iFrame出现空白问题的解决办法
May 13 Javascript
JQuery 设置checkbox值二次无效的解决方法
Jul 22 Javascript
JS判断一个数是否是水仙花数
Jun 11 Javascript
vue.js图片转Base64上传图片并预览的实现方法
Aug 02 Javascript
javascript中UMD规范的代码推演
Aug 29 Javascript
jQuery实现简单弹幕效果
Nov 28 jQuery
原理深度解析Vue的响应式更新比React快
Apr 04 Javascript
vue组件入门知识全梳理
Sep 21 #Javascript
Ajax获取node服务器数据的完整步骤
Sep 20 #Javascript
微信小程序获取当前时间及星期几的实例代码
Sep 20 #Javascript
vue操作dom元素的3种方法示例
Sep 20 #Javascript
npm ci命令的基本使用方法
Sep 20 #Javascript
js面试题之异步问题的深入理解
Sep 20 #Javascript
js实现简单的点名器随机色实例代码
Sep 20 #Javascript
You might like
php whois查询API制作方法
2011/06/23 PHP
php 利用array_slice函数获取随机数组或前几条数据
2015/09/30 PHP
Windows2003下php5.4安装配置教程(Apache2.4)
2016/06/30 PHP
php版微信小店调用api示例代码
2016/11/12 PHP
php远程请求CURL实例教程(爬虫、保存登录状态)
2020/12/10 PHP
JavaScript 字符串连接性能优化
2008/12/20 Javascript
JS获取后台Cookies值的小例子
2013/03/04 Javascript
jquery 页面滚动到指定DIV实现代码
2013/09/25 Javascript
JavaScript实现点击文本自动定位到下拉框选中操作
2016/06/15 Javascript
jQuery实现的兼容性浮动层示例
2016/08/02 Javascript
Angular.js中用ng-repeat-start实现自定义显示
2016/10/18 Javascript
socket.io与pm2(cluster)集群搭配的解决方案
2017/06/02 Javascript
深入探究angular2 UI组件之primeNG用法
2017/07/26 Javascript
小程序实现单选多选功能
2018/11/04 Javascript
jQuery实现左右两个列表框的内容相互移动功能示例
2019/01/27 jQuery
微信小程序用户授权,以及判断登录是否过期的方法
2019/05/10 Javascript
微信小程序登录对接Django后端实现JWT方式验证登录详解
2019/07/29 Javascript
vue组件命名和props命名代码详解
2019/09/01 Javascript
Python多线程编程(七):使用Condition实现复杂同步
2015/04/05 Python
Python判断字符串与大小写转换
2015/06/08 Python
Python多进程同步简单实现代码
2016/04/27 Python
放弃 Python 转向 Go语言有人给出了 9 大理由
2017/10/20 Python
Python 比较文本相似性的方法(difflib,Levenshtein)
2018/10/15 Python
利用python计算时间差(返回天数)
2019/09/07 Python
Django框架下静态模板的继承操作示例
2019/11/08 Python
tensorflow实现测试时读取任意指定的check point的网络参数
2020/01/21 Python
django 模版关闭转义方式
2020/05/14 Python
悦木之源美国官网:Origins美国
2016/08/01 全球购物
香港交友网站:be2香港
2018/07/22 全球购物
经贸日语专业个人求职信范文
2013/12/28 职场文书
住房抵押登记委托书
2014/09/27 职场文书
售后前台接待岗位职责
2015/04/03 职场文书
2015年秘书个人工作总结
2015/04/25 职场文书
《角的度量》教学反思
2016/02/18 职场文书
mysql的MVCC多版本并发控制的实现
2021/04/14 MySQL
Oracle 区块链表创建过程详解
2021/05/15 Oracle