欢迎来到我的UniApp技术专栏!🎉 在这里,我将与大家分享关于UniApp开发的实用技巧、最佳实践和项目经验。
专栏特色:
📱 跨平台开发一站式解决方案
🚀 从入门到精通的完整学习路径
💡 实战项目经验分享
🔍 常见问题深度解析
无论你是刚接触UniApp的新手,还是有一定经验的开发者,都能在这里找到有价值的内容。我将持续更新最新技术动态和开发技巧,帮助大家提升开发效率,打造高质量的跨平台应用。如果文章对你有帮助,别忘了点赞收藏🌟,也欢迎在评论区留言交流,我会及时回复大家的问题!
让我们一起探索UniApp的无限可能!💪
目录
一.什么是生命周期?
也叫生命周期函数/钩子函数。
指在Vue实例创建、更新和销毁的不同阶段触发的一组钩子函数,可以使开发者在不同阶段对Vue实例进行操作,以便执行特定的逻辑。
生命周期主要包含以下四个阶段:创建、挂载、更新、销毁。
好比一款手机,创建(拿到全新一款手机)、挂载(安装各种软件)、更新(系统或者软件升级)、销毁(丢弃手机)。
二.Vue3的生命周期函数
三.举例
1.获取dom元素
①反面例子
先举个反面例子
运行结果:如下图,此时打印结果为null,说明并没有成功获取到那个dom元素。
分析原因:因为我们一般写的js代码,是在setup阶段(生命周期最开始的阶段)的,而vue的虚拟dom变成真正的dom,是发生在挂载阶段的,也就是说,只有挂载完成(onMounted)后,才得到真正的dom元素,我们才能成功获取到。
②正面例子
根据以上分析,改正代码
运行效果
2.销毁组件,触发onUnmounted钩子函数
子组件代码
<template>
<view>
</view>
</template>
<script setup>
import { onUnmounted } from 'vue';
onUnmounted(()=>{
console.log("子组件被卸载了");
})
</script>
<style lang="scss" scoped>
</style>
父组件:我们通过点击按钮,使得子组件的v-if的值为false,就可以实现将子组件从dom树上移除,从而触发子组件的onUnmounted钩子函数。
<template>
<view class="">
<demo01 v-if="isShow"></demo01>
<button @click="isShow=false">按钮</button>
</view>
</template>
<script setup>
import { ref } from 'vue';
const isShow = ref(true);
</script>
<style lang="scss" scoped>
</style>
运行效果
以上就是本篇文章的全部内容,喜欢的话可以留个免费的关注呦~