需求讲述:
同一个页面点击切换tab ,如何选择实现方式实现该Tab下内容的显示与隐藏?v-show?v-if?
咋一看这两者实现起来也没什么问题
但是!!!
看一个简单页面 企业填写和个人填写 我是绑定了不一样的表单
使用 v-if v-else多切换几次
就出现白屏 报错 typeError
用v-show
正常使用
v-if和v-show的区别:
v-if :是组件的重建和销毁,每次切换都会重新加载页面(如果每次切换的时候都去请求后端数据,那完蛋,每次切换重新加载页面,转场加载ap时间长 ,元素排版和渲染过慢,拖累了整个页面),消耗性能,时间偏长(页面加载可以看一下vue的生命周期和页面加载时序)
v-show:是css display样式的显示和隐藏,不需要重新加载页面元素,渲染速度快。
特别是在两个极端情况下两者区别很大:
1.单个tab下dom元素过多
看了上面的区别都记住了哈:这种情况用v-show
2.切换tab频率过于频繁
用v-show
以上是我个人见解~