vue3笔记总结(一)

Vue3的生命周期有了新的变化,如beforeCreate和created被setup替代。setup、ref、reactive、watch、computed和watchEffect是重要的组合式API。setup用于组件数据和方法的初始化,ref和reactive创建响应式数据,watch和watchEffect监听数据变化,computed根据已有数据计算新值。
摘要由CSDN通过智能技术生成

生命周期

Vue 3 中的生命周期钩子函数相较于 Vue 2 有所改变。以下是 Vue 3 的生命周期钩子函数:

  1. 创建前后
  • beforeCreate:实例初始化之后,数据观测和事件配置之前调用。

  • created:在实例创建完成后调用,可以访问到已经创建好的实例。

  1. 挂载前后
  • beforeMount:在挂载开始之前被调用,此时模板编译完成,但尚未将渲染结果挂载到 DOM 中。

  • mounted:在挂载完成后被调用,此时实例已经被挂载到一个真实的 DOM 中。

  1. 更新前后
  • beforeUpdate:在更新开始之前被调用,此时数据已经被修改,但 DOM 尚未重新渲染。

  • updated:在更新完成之后被调用,此时数据已经被修改,并且 DOM 已经重新渲染。

  1. 销毁前后
  • beforeUnmount:在组件销毁之前调用,可以在该钩子函数中执行一些清理操作,例如取消订阅、关闭连接、清除计时器、移除事件监听等。

  • unmounted:在组件销毁完成之后调用,可以在该钩子函数中执行一些最终的清理操作,例如清理内存、解绑事件监听器等。

注意:当在 Vue 3 中使用 setup 函数时,beforeCreate 和 created 生命周期钩子函数将不再被触发。这是因为 setup 函数已经取代了 beforeCreate 和 created 钩子函数的功能,实现开启定时器、ajax、事件监听、获取本地数据。

常用的组合式API

1、setup:

vue3中的一个新的配置项,值为一个函数,组件中所要用到的数据、方法等,均要配置在setup中;

<script setup>
... 组件中所用的数据
... 组件中需要用到的方法
</script>

2、ref:

定义一个值类型的响应式数据,使用前需用 import 引入

<script setup>
import {ref} from 'vue'

const name = ref("小明");
const age = ref(18);

</script>

3、reactive:

定义引用类型的响应式数据,使用前需 import 引入

<script setup>
import {reactive} from 'vue'

const list = reactive(["vue","uni","react"])
</script>

4、watch:

监听数据的变化执行回调函数,使用前需 import 引入

<template>
<button size="mini" type="warn" @click="num++">{{num}}</button>
</template>
<script setup>
import {watch} from 'vue'
watch(num,(nval,oval)=>{
		console.log("num发生变化",nval,oval);
	})
</script>

使用stop可以停止监听

const stop = watch(num,()=>{},{deep:true})

5、computed:

根据现有数据计算出新的数据,使用前需 import 引入

<template>
<view>{{dnum}}</view>
<button size="mini" @click="mynum = num+2">{{mynum}}</button>
</template>
<script setup>
import {computed} from 'vue'
const dnum = computed(()=>num.value*2)
const mynum = computed({
		get:()=>num.value*10,
		set:v=>num.value=v
	})
</script>

6、 watchEffect:

引用的响应式数据可以监听执行器的回调函数,使用前需 import 引入

watchEffect(()=>{
	consloe.log(num)
})
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值