我是靠谱客的博主 现代苗条,这篇文章主要介绍面试被问到v-if和v-for同时使用优先级的问题,现在分享给大家,希望可以做个参考。

// 关于vue中v-if 与v-show 和v-for的提问
// v-for和v-if的优先级,v-for的要高,为什么我看不懂源码,看了官方文档,只知道最好不要放一起使用
// 因为优先级高的问题,即便满足了v-if条件的被隐藏了。其实v-for也将数据渲染到dom了,如果数据多重绘dom
// 也是影响性能吧。用了个计算属性,其实就是过滤满足条件的数据(我面试的时候直接说的js逻辑处理,将满足条件数据
// 筛选下来,再渲染,面试没说用computed他觉得我low,哈哈,作为小白确实low)

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <div id="app"> <div class="box" > <ul v-if="" > <li v-for='item in data2' :key='item.id'>{{item.name}}</li> </ul> </div> </div> </body> <script src="./vue-2.4.0.js"></script> <script> let vm=new Vue({ el:'#app', data:{ data1:[ {'id':1,'name':'liao','age':25,'show':true}, {'id':2,'name':'bao','age':13,'show':false}, {'id':3,'name':'feng','age':15,'show':true}, {'id':4,'name':'hong','age':17,'show':false} ] }, computed: { //其实就是过滤出满足条件后的数据再渲染 data2:function(){ return this.data1.filter(function(value){ return value.show }) } }, }); </script> </html>

最后

以上就是现代苗条最近收集整理的关于面试被问到v-if和v-for同时使用优先级的问题的全部内容,更多相关面试被问到v-if和v-for同时使用优先级内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(72)

评论列表共有 0 条评论

立即
投稿
返回
顶部