三、Vue3基础[生命周期]

一、生命周期

1.beforeCreate

详细信息:会在实例初始化完成、props 解析之后、data()computed 等选项处理之前立即调用
,此时datawatchermethods都还没有生效

应用:不经常使用,常常用于某些插件初始化

2. created

详细信息:当这个钩子被调用时,以下内容已经设置完成:响应式数据计算属性方法侦听器。然而,此时挂载阶段还未开始,因此 $el 属性仍不可用

应用:此时常常用于通过ajax进行数据请求

3. beforeMount

详细信息:当这个钩子被调用时,组件已经完成了其响应式状态的设置,但还没有创建 DOM 节点。它即将首次执行 DOM 渲染过程。此时DOM还是无法操作的。相比于created生命周期,只是多了一个$el的属性,然而其值为undefined

应用:此时就要渲染,在这里也可以更改数据,不会触发updated,在这里可以在渲染前最后一次更改数据的机会

4.mounted

详细信息:el已完成DOM的挂载与渲染,DOM也渲染完毕。

5.beforeUpdate

详细信息:其在data数据改变时(改变的data里面的数据必须在页面中显示变化)先触发该函数,然后触发updated

<template>
  <div>
    {{okko}}
    <br>
    ----------
    <br>
    ----------
    <br>
    ----------
  </div>
</template>
<script>
export default {
  data() {
    return {
      okko: 123,
      buku:569
    }
  },
  mounted(){
    setTimeout(()=>{
      this.okko=12356
    },1000)
  },
  beforeUpdate(){
    console.log(1)
  },
  updated(){
    console.log(2)
  }
}
</script>
<style>

</style>

6.updated

详细信息:其在data数据改变时(改变的data里面的数据必须在页面中显示变化)先触发beforeUpdate,然后触发updated

7.beforDestroy

详细信息:vue3中称之为beforeUnmount,在实例销毁之前调用,实例仍然完全可用,这一步还可以用this来获取实例,一般在这一步做一些重置的操作,比如清除掉组件中的定时器 和 监听的dom事件

8.destroyed

详细信息:vue3中称之为unmounted,在实例销毁之后调用,调用后,所以的事件监听器会被移出,所有的子实例也会被销毁

二、Vue3组合式与选项式不同写法


选项式          -------->      组合式
 
beforeCreate   -------->      setup(()=>{})
created        -------->      setup(()=>{})
beforeMount    -------->      onBeforeMount(()=>{})
mounted        -------->      onMounted(()=>{})
beforeUpdate   -------->      onBeforeUpdate(()=>{})
updated        -------->      onUpdated(()=>{})
beforeDestroy  -------->      onBeforeUnmount(()=>{})
destroyed      -------->      onUnmounted(()=>{})
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue3中,使用组合式API的方式来编写组件,其中setup函数是必须的。在setup函数中,可以使用一些特定的生命周期钩子函数来处理组件的生命周期事件。具体的生命周期钩子函数如下: 1. beforeCreate:在实例初始化之后,数据观测和事件配置之前被调用。 2. created:在实例创建完成后被立即调用。在这一步,实例已经完成了数据观测、属性和方法的运算,但是还没有挂载到DOM中。 3. beforeMount:在挂载开始之前被调用,相关的render函数首次被调用。 4. mounted:实例挂载完成后调用,此时组件已经被渲染到页面上。 5. beforeUpdate:在数据更新之前调用,发生在虚拟DOM重新渲染和打补丁之前。可以在这个生命周期中对更新之前的状态做一些处理。 6. updated:在数据更新之后调用,发生在虚拟DOM重新渲染和打补丁之后。可以在这个生命周期中操作更新后的DOM。 7. beforeUnmount:在实例销毁之前调用。在这一步,实例仍然完全可用。 8. unmounted:在实例销毁之后调用,此时组件已经从页面中移除。 以上是Vue3中常用的生命周期钩子函数,在setup函数中可以根据需要选择合适的钩子函数来处理组件的生命周期事件。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [教程10 Vue3的生命周期与方法(Typescript)+ Setup语法糖详解 + setup中的生命周期钩子(代码截图版)](https://blog.csdn.net/boxuestudio/article/details/129909122)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [vue3--setup&生命周期](https://blog.csdn.net/weixin_44748205/article/details/124868197)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [vue3 + vite入门级资料 (基于vue2和前端基础)](https://download.csdn.net/download/BB_zhan/87274026)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值