【无标题】

一、谈谈你对 Vue 生命周期的理解?

1)生命周期是什么?Vue 实例有一个完整的生命周期,也就是从开始创建、初始化数据、编译模版、挂载 Dom -> 渲染、更新 -> 渲染、卸载等一系列过程,我们称这是 Vue 的生命周期。

2)各个生命周期阶段及其钩子函数

vue的生命周期核心经历了四个阶段,在四个阶段的前后分别有两个钩子函数。

第一阶段:数据挂载阶段:

把配置项data中的属性,赋给了vue对象本身,并做了数据劫持。

该阶段前后的两个钩子函数:beforeCreate和created

第二阶段:模板渲染阶段:

把vue对象的数据渲染到模板上。

该阶段前后的两个钩子函数:beforeMount和mounted

第三阶段:组件更新阶段:

当数据发送变化时,组件会进行重新渲染,所以,准确的说是,组件重新渲染阶段。

该阶段前后的两个钩子函数:beforeUpdate和updated

第四阶段:组件销毁阶段:

组件销毁。

该阶段前后的两个钩子函数:beforeDestroy和destroyed

二、为什么不建议把v-for和v-if连用?

建议不要连用

原因: v-for比v-if优先级高,如果遍历的数组元素个数比较多,但是满足v-if条件比较少的情况下。会浪费性能。而且,每次刷新页面时,都会执行这样性能不高的代码。

解决:可以在computed里循环数组,通过filter的方式,过滤出需要的数据。v-for直接循环计算属性的结果(不用v-if)。而computed是有缓存的,所以,在原始数据没有变化时,不会多次过滤数据,这样,就提高了效率。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值