vue生命周期整理

生命周期

开始创建、初始化数据、编译模板、挂载Dom、渲染 → 更新 → 渲染、激活、移除、销毁

el优先级

  • render函数选项 > template参数 > 外部HTML

过程

  • new Vue() 初始化实例
  • beforeCreate() (数据/计算属性/方法 未初始化, Dom未挂载)
  • 初始化 数据/计算属性/方法
  • created() (数据/计算属性/方法 已初始化, Dom未挂载)
  • 查找对应的模板,编译模板为虚拟Dom
  • beforeMounted() (数据/计算属性/方法 已初始化, Dom未挂载)
  • 挂载Dom
  • mounted() (数据/计算属性/方法 已初始化, Dom已挂载)

更新

  • 首先触发 watch
  • 再触发 beforeUpdate()
  • 再触发 updated()
  • beforeUpdate(), updated()中不能更改数据,否则会陷入死循环

激活

  • activated() -> for keep-alive,组件被激活时调用
  • deactivated() -> for keep-alive,组件被移除时调用

销毁

  • $destroy方法被调用的时候就会执行 beforeDestroy() destroyed()
  • 一般beforeDestroy()善后, destroyed()也可以:清除计时器、清除非指令绑定的事件等等
  • 数据和方法还存在,但无法操作Dom了
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Vue是一种流行的JavaScript框架,用于构建用户界面。它采用了MVVM(Model-View-ViewModel的架构模式,通过数据驱动和组件化的方式来构建可复用的UI组件。 Vue的基本原理可以总结为以下几点: 1. 响应式数据:Vue使用了响应式的数据绑定机制。当数据发生变化时,相关的视图会自动更新。这是通过Vue的响应式系统实现的,它使用了ES5的Object.defineProperty()方法来劫持对象的属性访问,从而实现对数据的监听和更新。 2. 模板引擎:Vue使用了基于HTML的模板语法,将模板转换为虚拟DOM(Virtual DOM)。模板中可以使用Vue提供的指令、表达式和过滤器等功能,使开发者可以方便地操作数据和控制视图。 3. 虚拟DOM:Vue通过虚拟DOM来提高渲染性能。当数据发生变化时,Vue会先生成一个新的虚拟DOM树,然后与旧的虚拟DOM树进行比较,找出差异,并只更新需要更新的部分。这样可以避免直接操作真实DOM带来的性能损耗。 4. 组件化开发:Vue将UI界面划分为一个个独立的组件,每个组件都有自己的数据和视图。组件可以嵌套使用,形成复杂的应用界面。Vue提供了组件化开发的相关API,使得组件的定义、通信和复用变得简单和高效。 5. 生命周期钩子:Vue提供了一系列的生命周期钩子函数,用于在组件的不同阶段执行相应的操作。开发者可以在这些钩子函数中进行数据初始化、DOM操作、事件监听等操作,以及与服务器进行数据交互。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值