vue列表数据发生变化指令没有更新问题及解决方法


Posted in Javascript onJanuary 16, 2020

问题描述,在vue的for循环中使用了指令,然后对数据进行筛选的时候,发现指令没有起作用。

vue列表数据发生变化指令没有更新问题及解决方法 

如图前面的图标是根据文件名的后缀名,返回响应图标的,通过指令实现的。然后我们在搜索框中删选以后,数据更新了,但是图标没有更新

分析原因

<div v-for="(item, index) in myDate" :key='index'>
...
</div>

问题就出在了:key='index'因为vue中for循环是根据key的值的变化来更新vnode的,很显然我们经过筛选如果删选出三条数据,那么index = 0, 1, 2没有变化,所以vnode没有更新

解决办法1:我们设置:key的时候最好使用每条数据的id这样就是唯一的,每次筛选,vnode都会更新。

解决办法2:在指令中设置

// 添加bind设置
bind: function (el, binding, vnode) {
 // bind中的vnode里面的key可以给设置一个随机数,这样每次都会更新虚拟节点。
 let num = parseInt(Math.random() * 10)
 vnode.key = num
},
inserted: ...

总结

以上所述是小编给大家介绍的vue列表数据发生变化指令没有更新问题及解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
Javascript 设计模式(二) 闭包
May 26 Javascript
利用腾讯的ip地址库做ip物理地址定位
Jul 24 Javascript
用jquery写的一个万年历(自写)
Jan 20 Javascript
window.onload使用指南
Sep 13 Javascript
轻松掌握jQuery中wrap()与unwrap()函数的用法
May 24 Javascript
jquery 动态合并单元格的实现方法
Aug 26 Javascript
vue解决弹出蒙层滑动穿透问题的方法
Sep 22 Javascript
JS合并两个数组的3种方法详解
Oct 24 Javascript
在Vue项目中,防止页面被缩放和放大示例
Oct 28 Javascript
《javascript设计模式》学习笔记四:Javascript面向对象程序设计链式调用实例分析
Apr 07 Javascript
深入理解 ES6中的 Reflect用法
Jul 18 Javascript
jQuery+ajax实现用户登录验证
Sep 13 jQuery
使用Karma做vue组件单元测试的实现
Jan 16 #Javascript
js实现div色块拖动录制
Jan 16 #Javascript
微信小程序实现二维码签到考勤系统
Jan 16 #Javascript
解决vue+ element ui 表单验证有值但验证失败问题
Jan 16 #Javascript
JavaScript实现简单的计算器
Jan 16 #Javascript
js面向对象之实现淘宝放大镜
Jan 15 #Javascript
js实现简单的打印表格
Jan 15 #Javascript
You might like
APMServ使用说明
2006/10/23 PHP
PHP实现活动人选抽奖功能
2017/04/19 PHP
PHP中define() 与 const定义常量的区别详解
2019/06/25 PHP
JavaScript内核之基本概念
2011/10/21 Javascript
通过JS自动隐藏手机浏览器的地址栏实现原理与代码
2013/01/02 Javascript
jquery禁用右键单击功能屏蔽F5刷新
2014/03/17 Javascript
使用js dom和jquery分别实现简单增删改
2014/09/11 Javascript
jQuery实现下拉框左右移动(全部移动,已选移动)
2016/04/15 Javascript
浅析Nodejs npm常用命令
2016/06/14 NodeJs
JavaScript中绑定事件的三种方式及去除绑定
2016/11/05 Javascript
Vuejs 用$emit与$on来进行兄弟组件之间的数据传输通信
2017/02/23 Javascript
Javascript仿京东放大镜的效果
2017/03/01 Javascript
Bootstrap实现基于carousel.js框架的轮播图效果
2017/05/02 Javascript
ExtJs异步无法向外传值和赋值的完美解决办法
2017/06/14 Javascript
vue-router路由参数刷新消失的问题解决方法
2017/06/17 Javascript
p5.js绘制旋转的正方形
2019/10/23 Javascript
vue登录页实现使用cookie记住7天密码功能的方法
2021/02/18 Vue.js
Python的Flask框架中@app.route的用法教程
2015/03/31 Python
python list转矩阵的实例讲解
2018/08/04 Python
使用Pandas对数据进行筛选和排序的实现
2019/07/29 Python
Python 用matplotlib画以时间日期为x轴的图像
2019/08/06 Python
python网络编程之多线程同时接受和发送
2019/09/03 Python
如何在python中写hive脚本
2019/11/08 Python
Numpy与Pytorch 矩阵操作方式
2019/12/27 Python
Python统计时间内的并发数代码实例
2019/12/28 Python
PyTorch实现更新部分网络,其他不更新
2019/12/31 Python
Python logging模块写入中文出现乱码
2020/05/21 Python
Pyinstaller 打包发布经验总结
2020/06/02 Python
使用javascript和HTML5 Canvas画的四渐变色播放按钮效果
2014/04/10 HTML / CSS
世界第一冲浪品牌:O’Neill
2016/08/30 全球购物
护士岗位求职应聘自荐书范文
2014/02/12 职场文书
专业技术职务聘任书
2014/03/29 职场文书
企业安全生产演讲稿
2014/05/09 职场文书
班级体育活动总结
2014/07/05 职场文书
爱的教育观后感
2015/06/17 职场文书
一文搞懂Java中的注解和反射
2022/06/21 Java/Android