常用生命周期函数
- onLoad 页面加载时触发,用onLoad可以接受路由传参;
- onReady 页面组件渲染完毕时触发,类似于vue2中的mounted生命周期函数;
- onShow 页面出现在屏幕上时触发,由于在h5或者小程序中,页面初始化后不会销毁,而是会挂载在后台,因此onLoad和onReady只会触发一次,而onShow可以实现每次进入页面时都能触发到,非常好用。
- mounted 组件渲染完成后触发,uniapp区分页面和组件的生命周期,onLoad或者onShow是页面生命周期,在组件中是不会触发的,必须写组件的生命周期;
- onBackPress 用户点击左上角的返回按钮时触发,常见的场景是比如在蒙层中,按返回按钮时希望能关闭蒙层而不是返回上一页,这时就需要这个生命周期函数去自定义返回按钮的行为;
路由跳转及传参
uniapp中的路由跳转非常方便,不需要去单独写一个路由文件,全部在pages.json中自动配置好了。路由函数中的url直接写文件路径即可,不过需要注意url不能写项目路径(比如@/pages/index),只能写相对路径(比如../search/search)。传参也只要直接在路径后面用=的方式连接参数即可。更多详见官方文档
- uni.navigateTo({url: '../search/search?id=1'}),最常用的路由跳转函数
- uni.redirectTo({url: '../search/search?id=1'}),这个方法会关闭当前页面,然后再跳转到目标页面,用这种方式不会出现后退的按钮
- uni.switchTab({url: '../shopcart/shopcart'}),这个函数可以切换tab,上面两个都不可以。