博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vue知识点整理
阅读量:6973 次
发布时间:2019-06-27

本文共 565 字,大约阅读时间需要 1 分钟。

hot3.png

Vue重学

语法

key的重要性

由于vue循环时不是将dom元素循环创造, 而是一个dom元素重复使用, 而它的diff机制是同层元素进行对比; 如下图:

如上图: 对比的原则是 父节点 A 与 父节点 A 对比,下面的子节点与子节点进行对比. 如果右边的A 节点 变为 B 节点, 但是B下面的子元素还是B1, B2, B3. Vuediff机制会删除 A节点, 同时连带下面的子节点也会删除, 并创造B节点, 再依次创建下面的B1, B2, B3子节点;

如果我们如图所示, B1,B2,B3是循环出来的相同dom, 在B1B2中间加入一个B4节点, 如果没有设置key属性时, Vue的机制是将B2改变成B4, 将B3改变成B2, 在创建一个B3节点; 如果有key属性时, 直接在B1B2之间插入B4节点就可以了;

而且索引并不推荐它作为key, 我们在进行对数组的数据操作中, 每一个数组内的元素的索引是在不断变化的,因此并不能很绝对的代表一个节点;

v-forv-if不要同时出现在一个节点上

建议使用 computed 过滤掉不要显示的数据后再做循环

this.$forceUpdate() 强制更新组件

转载于:https://my.oschina.net/u/3105272/blog/3028249

你可能感兴趣的文章
让数据随分批显示的方法
查看>>
(译)如何使用cocos2d和box2d来制作一个Breakout游戏:第二部分(完)
查看>>
Java学期总结
查看>>
sqlite3内存不断增加的原因
查看>>
vim基础学习1---简单命令
查看>>
Orchard模块开发全接触4:深度改造前台
查看>>
“Incompatible clusterIDs”错误原因分析
查看>>
以stm32f407为例,学习cortex-m4通用寄存器的用法
查看>>
WPF BitmapSourceToArray and ArrayToBitmapSource
查看>>
[日记]2014-9-21.
查看>>
《你必须掌握的Entity Framework 6.x与Core 2.0》书籍出版
查看>>
DUP
查看>>
How does “void *” differ in C and C++?
查看>>
pl/sql设置快捷键输入sf+空格出现select * from
查看>>
Mybatis_IllegalArgumentException: Mapped Statements collection does not contain value for
查看>>
common commands on Linux
查看>>
常用的数据分析方法汇总
查看>>
【轻松搞定系统操作访问文件没权限的问题】
查看>>
flex简单参考实例
查看>>
谈谈嵌套for循环的理解
查看>>