uni-app开发的微信小程序-打回登录页时会在左上角出现一个房子图标(返回首页)- 怎么回事-怎么解决

文章讲述了微信小程序中,当从非首页或tabBar页面返回时出现的返回首页按钮问题。提供了两种解决方案:在登录页面隐藏按钮或禁用原生导航栏。强调了轻量化体验和无感知登录的需求,以及如何根据实际场景调整开发策略。
摘要由CSDN通过智能技术生成

前言

  • 发现项目,在首次进入时打回登录页,原生导航栏左边会出现一个房子按钮可以直接返回首页

  • 最后查了一圈发现这个微信版本更新之后,当我们进入不是首页,或者tabbar页面时就会出现

  • 微信针对这个也是有解决方案的,可以在微信环境时把他禁用(在h5环境是不会出现的,只有微信有)

  • 还有一种办法,只有在原生导航栏时才会出现,我们如果禁用原生导航栏就从根本解决问题

自己理解

微信小程序开始以来,一直追求的是轻量化,注重用户自我决定,并且有用户信息(已废弃)手机号授权,等等授权,就是为了达到一种无感知的用户体验(区别h5),如果我们一上来就打回登录页,需要登录,这样就违背了他的理念,所以才会出现这个不是当我们进入不是首页,或者tabbar页面时就会出现按钮,这样是我们发现很多小程序一进来是首页,并且可以浏览信息,只有在关键操作时才需要登录。甚至有些小程序都没有专门登录页直接授权无感知。但是也不是一棒子打死,针对特殊需求情况,微信也是预留api解决这个问题

微信开发者文档-uni-app文档-搜索hideHomeButton查看说明

解决方案

1.在登录页面的-onShow生命周期中判断是不是微信环境是否有这个api,有就隐藏按钮

缺点:如果有标题的话-会导致标题左移并且在打回登录页时候按钮会出现一瞬间在消失(真机测试时明显-用户体验不好)

onShow() {
             if (uni.hideHomeButton) {
                console.log('uni.hideHomeButton');
                wx.hideHomeButton();
             }
        },

2.直接从源头解决问题

之所以会出现左上角首页按钮-就是因为源码在判断-并且在符合情况时在原生导航栏左边加上按钮。如果我们直接禁用原生导航栏-就从根本解决问题,也不会出现一闪而过情况-用户体验好

{
            "path": "pages/login",
            "style": {
                "navigationBarTitleText": "登录页",
                // 禁用原生导航栏
                "navigationStyle": "custom"
            }
        },

总结:

经过这一趟流程下来相信你也对 uni-app开发的微信小程序-打回登录页时会在左上角出现一个房子图标(返回首页)- 怎么回事-怎么解决 有了初步的深刻印象,但在实际开发中我 们遇到的情况肯定是不一样的,所以我们要理解它的原理,万变不离其宗。加油,打工人!

什么不足的地方请大家指出谢谢 -- 風过无痕

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

-風过无痕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值