一、onBackPress生命周期是依赖uniapp顶部的导航条的

在这里插入图片描述
如上图所示,如果你不是点击左上角的返回图标返回上个页面,而是通过浏览器(pc/手机)自带的操作返回,比如右滑,这种是无法触发onBackPress生命周期的

二、跳转tabbar配置页面的时候,必须使用uni.switchTab()

在这里插入图片描述
如上图所示,跳转四个tabbar页面,是不能使用uni.navigateTo()的,这样无法跳转,必须使用uni.switchTab()

三、uni.switchTab()是不会触发页面的onLoad()、created()等生命周期函数的

在这里插入图片描述
还是使用上面这个图,比如,我一开始是游客模式进的主页,然后在触发登录进行登录操作后,再次使用uni.switchTab()跳转到了主页,这个时候,如果我们有些操作是写在created()生命周期里面的,比如网络请求这些,就不会触发,可能会导致一些问题。那如果我想再次进入主页后,还想进行页面的网络数据刷新,该怎么操作呢?这时候就可以使用window.location.href(),window.location.href = 主页地址,这时候就会发出相应的生命周期函数。

四、uniapp开发安卓和ios一些不一样的地方

4.1 底部距离不一样

IOS
安卓
比如我上面第二张图图标指的那个购物车全选按钮的操作栏,他是跟下面的tabbar挨着的,没有间距。
假设我下面abbar的高度为100rpx,如果我把全选按钮操作栏的固定定位距离底部的距离写成bottom:100rpx,这样的话,在安卓端显示是可以达到我们的逾期效果,但是在ios上,全选按钮操作栏就会有部分内容被tabbar遮盖,所以我们遇到这种情况的时候,要判断设备类型,然后加上对应样式。

4.2 复制操作

uni.setClipboardData(),uniapp提供的一种复制操作,很方便,但是安卓可以,ios不行,所以最好还是使用vue的v-clipboard指令

4.3 微信JSSDK的自定义页面分享

也是一样的,安卓可以成功,IOS不行

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐