一、Vue生命周期
- 系统自带:beforeCreate、created、beforeMount、mounted、beforeUpdate、updated、beforeDestroy、destroyed
- 进入页面或组件,会执行beforeCreate、created、beforeMount、mounted
- beforeCreate时既没有$el也没有$data,created、beforeMount时有$data没有$el,mounted时$data和$el都已存在
- 如果加入了keep-alive会多出两个生命周期,activated和deactivated,此时第一次进入组件执行beforeCreate、created、beforeMount、mounted、activated,第二次或N次进入组件会执行activated。(注:keep-alive是vue系统自带的一个组件,用来缓存组件,提升性能。使用场景例如:首页进入详情页,如果用户首页每次点击都相同,详情页不必每次都请求,缓存起来,当点击更改,再发送请求指令。)
二、v-if和v-show区别
- 展示形式不同:v-if是创建一个dom节点;v-show是display:none、block
- 使用场景不同:初次加载v-if优于v-show,页面不会多加载盒子;频繁切换建议使用v-show,v-if创建和删除开销太大,v-show显示和隐藏开销较小。
三、 v-if和v-for的优先级
- v-for的优先级高于v-if
四、ref是什么
获取dom