1.v-show 和 v-if 在隐藏一个元素的时候有什么不同, 应该如何来选择?**
v-show 显示内容 本质就是通过设置 css 中的 display 设置为 none,控制隐藏
v-if 显示与隐藏 是动态的向 DOM 树内添加或者删除 DOM 元素 {应用场景 : 登录头像 成功才创建标签 不登录就不创建需要的标签}
选择场景 : v-if 是根据条件是否成立决定是否要创建元素.
如果某个元素需要频繁切换显示状态的话, 建议是使用 v-show, 因为频繁创建销毁 DOM 需要性能开销.
必会 v-show 和 v-if 指令的共同点和不同点?(必会)
1、相同点:
v-show 和 v-if 都能控制元素的显示和隐藏。
2、不同点:
2.1)实现本质方法不同
v-show 本质就是通过设置 css 中的 display 设置为 none,控制隐藏
v-if 是动态的向 DOM 树内添加或者删除 DOM 元素
2.2)编译的区别
v-show 其实就是在控制 css
v-if 切换有一个局部编译/卸载的过程,切换过程中合适地销毁和重建内部的事件监听和子组件
2.3)编译的条件
v-show 都会编译,初始值为 false,只是将 display 设为 none,但它也编译了
v-if 初始值为 fal