uni-app简单介绍
什么是uni-app? uni-app 是使用 Vue.js 开发跨平台应用的前端框架,开发者编写一套代码,可编译到iOS、Android、H5、小程序等多个平台
uni-app 的生命周期主要分为:应用生命周期、页面生命周期、组件生命周期三种。 uniapp生命周期官方文档
应用生命周期(仅可以在APP.vue中监听)
1.onLaunch:当uni-app
初始化完成时触发(全局只触发一次)
2.onShow :当 uni-app 启动,或从后台进入前台显示 //监听用户进入小程序
3.onHide :当 uni-app 从前台进入后台//监听用户离开小程序
4.onError :当 uni-app报错时触发
5.onUniNViewMessage :对nvue页面发送的数据进行监听,可参考 nvue 向 vue 通讯 6.onUnhandledRejection:对未处理的 Promise 拒绝事件监听函数(2.8.1+)
7.onPageNotFound:页面不存在监听函数 8.onThemeChange:监听系统主题变化
注意
- 应用生命周期仅可在App.vue中监听,在其它页面监听无效。
- onlaunch里进行页面跳转,如遇白屏报错,请参考onlaunch生命周期内navigateto跳转页面注意
- onPageNotFound 页面实际上已经打开了(比如通过分享卡片、小程序码)且发现页面不存在,才会触发,api 跳转不存在的页面不会触发(如 uni.navigateTo)
页面生命周期(在页面中添加)
1.onLoad (监听页面加载)
2.onShow(监听页面显示)
3.onReady (监听页面初次渲染完成)
4.onHide (监听页面隐藏)
5.
onUnload :监听页面卸载
6.onResize :监听窗口尺寸变化
7.onPullDownRefresh :监听用户下拉动作,一般用于下拉刷新
当页面中需要用到下拉刷新功能时,打开pages.json,在"globalStyle"里设置"enablePullDownRefresh":true
8.onReachBottom :页面滚动到底部的事件(不是scroll-view滚到底),常用于下拉下一页数据
9.onTabItemTap :点击 tabBar 时触发
10.onShareAppMessage :用户点击右上角分享
11.onPageScroll :监听页面滚动
12.onNavigationBarButtonTap :监听原生标题栏按钮点击事件
13.onBackPress :监听页面返回
14.onNavigationBarSearchInputChanged :监听原生标题栏搜索输入框输入内容变化事件
15.onNavigationBarSearchInputConfirmed :监听原生标题栏搜索输入框搜索事件,用户点击软键盘上的“搜索”按钮时触发
16.onNavigationBarSearchInputClicked :监听原生标题栏搜索输入框点击事件
组件生命周期(与vue标准组件的生命周期相同)
1.beforeCreate :在实例初始化之后被调用
2.created :在实例创建完成后被立即调用
3.beforeMount :在挂载开始之前被调用
该钩子在服务器端渲染期间不被调用。
使用方法:在主页面中引入组件,在组件中写
4.mounted :挂载到实例上去之后调用(该钩子在服务器端渲染期间不被调用)
注意 mounted 不会保证所有的子组件也都一起被挂载。如果你希望等到整个视图都渲染完毕, 可以在 mounted 内部使用vm.$nextTick:
5.beforeUpdate :数据更新时调用,发生在虚拟 DOM 打补丁之前(该钩子在服务器端渲染期间不被调用,因为只有初次渲染会在服务端进行)
6.updated :由于数据更改导致的虚拟 DOM 重新渲染和打补丁,在这之后会调用该钩子(该钩子在服务器端渲染期间不被调用)
7.beforeDestroy :实例销毁之前调用。在这一步,实例仍然完全可用(该钩子在服务器端渲染期间不被调用)
8.destroyed :Vue 实例销毁后调用(该钩子在服务器端渲染期间不被调用)