uni-app 的生命周期函数有哪些?

推荐答案

uni-app 的生命周期函数主要包括以下几类:

  1. 应用生命周期

    • onLaunch:当 uni-app 初始化完成时触发,全局只触发一次。
    • onShow:当 uni-app 启动,或从后台进入前台显示时触发。
    • onHide:当 uni-app 从前台进入后台时触发。
    • onError:当 uni-app 发生脚本错误或 API 调用失败时触发。
  2. 页面生命周期

    • onLoad:页面加载时触发,一个页面只会调用一次。
    • onShow:页面显示/切入前台时触发。
    • onReady:页面初次渲染完成时触发,一个页面只会调用一次。
    • onHide:页面隐藏/切入后台时触发。
    • onUnload:页面卸载时触发。
    • onPullDownRefresh:监听用户下拉刷新事件。
    • onReachBottom:监听用户上拉触底事件。
    • onPageScroll:监听页面滚动事件。
    • onTabItemTap:点击 tab 时触发。
  3. 组件生命周期

    • beforeCreate:在实例初始化之后,数据观测 (data observer) 和 event/watcher 事件配置之前被调用。
    • created:在实例创建完成后被立即调用。
    • beforeMount:在挂载开始之前被调用。
    • mounted:实例被挂载后调用。
    • beforeUpdate:数据更新时调用,发生在虚拟 DOM 打补丁之前。
    • updated:由于数据更改导致的虚拟 DOM 重新渲染和打补丁之后调用。
    • beforeDestroy:实例销毁之前调用。
    • destroyed:实例销毁后调用。

本题详细解读

应用生命周期

应用生命周期函数是 uni-app 全局的生命周期函数,它们在整个应用的生命周期中只会触发一次或几次。这些函数通常用于处理应用的初始化、前后台切换、错误处理等全局性操作。

  • onLaunch:通常用于初始化应用数据或进行一些全局配置。
  • onShow:可以用于处理应用从后台切换到前台时的逻辑,比如刷新数据。
  • onHide:可以用于保存应用状态或清理资源。
  • onError:用于捕获全局错误,进行错误上报或处理。

页面生命周期

页面生命周期函数是针对每个页面的,它们会在页面的不同阶段触发。这些函数通常用于处理页面的加载、显示、隐藏、卸载等操作。

  • onLoad:通常用于获取页面参数或初始化页面数据。
  • onShow:可以用于刷新页面数据或处理页面显示时的逻辑。
  • onReady:可以用于处理页面初次渲染完成后的逻辑,比如操作 DOM。
  • onHide:可以用于保存页面状态或清理资源。
  • onUnload:可以用于清理页面资源或取消事件监听。
  • onPullDownRefresh:用于处理用户下拉刷新操作。
  • onReachBottom:用于处理用户上拉触底操作,通常用于加载更多数据。
  • onPageScroll:用于监听页面滚动事件,可以实现一些滚动相关的效果。
  • onTabItemTap:用于处理用户点击 tab 时的逻辑。

组件生命周期

组件生命周期函数是针对 uni-app 组件的,它们会在组件的不同阶段触发。这些函数通常用于处理组件的初始化、挂载、更新、销毁等操作。

  • beforeCreate:可以用于在组件实例化之前进行一些操作。
  • created:可以用于在组件实例化之后进行一些操作,比如初始化数据。
  • beforeMount:可以用于在组件挂载之前进行一些操作。
  • mounted:可以用于在组件挂载之后进行一些操作,比如操作 DOM。
  • beforeUpdate:可以用于在组件更新之前进行一些操作。
  • updated:可以用于在组件更新之后进行一些操作。
  • beforeDestroy:可以用于在组件销毁之前进行一些操作,比如清理资源。
  • destroyed:可以用于在组件销毁之后进行一些操作。

通过理解这些生命周期函数,开发者可以更好地控制 uni-app 应用、页面和组件的行为,从而实现更复杂的功能和更好的用户体验。

纠错
反馈