微信小程序-自定义导航栏

微信小程序-自定义导航栏,第1张

自定义导航栏分两种,一种是单独某个页面做一个自定义导航;一种是所有页面的导航栏都是自定义样式

如果是所有页面的导航栏都要自定义,在appjson里找到window样式

"navigationStyle":"custom"

所有页面的就需要先自定义组件了,这里先不做详说,因为我目前项目中只是首页需要自定义导航栏,这里我先详说这个

这样当前页面自带的导航栏就没有了,然后需要你在wxml页面中就可以开始写样式了

<!-- 自定义导航栏 -->

    <view class="navStyle" style="height:{{navHeight}}px">

      <view class="navFix" style="height:{{navHeight}}px;margin-top:{{imgTop}}px;">

          <image src=""></image>

          <view style="margin-top:{{cityTop}}px;">

            全国

            {{cityName}}

          </view>

      </view>

    </view>

// 获取状态栏高度

        const { statusBarHeight } = wxgetSystemInfoSync();

        // 得到右上角菜单的位置尺寸

        const menuButtonObject = wxgetMenuButtonBoundingClientRect();

        consolelog('右上角菜单的尺寸:',menuButtonObject);

        const { top, height } = menuButtonObject;

        // 计算导航栏的高度

        // 此高度基于右上角菜单在导航栏位置垂直居中计算得到

        const navBarHeight = height + (top - statusBarHeight) 2;

        // 计算状态栏与导航栏的总高度

        const statusNavBarHeight = statusBarHeight + navBarHeight;

        thissetData({

            navHeight:statusNavBarHeight,

            imgTop:statusNavBarHeight-45,

            cityTop:statusNavBarHeight-45-25

        })

微信小程序如何设置地图导航

登入到速成应用平台账号,进入到“小程序模板”页面,选择“新建空白小程序”或选中某个模板后点击“使用”,随后设置下项目封面和标题,进入到小程序编辑页面;可以使用文本、等组件,将选中的组件(如文本)点击/拖拽到右边“编辑框页面中”,如下截图

二 、如何设置地图导航

点击放置在模板中的组件(如文本)然后右侧面板点击“事件-功能-调用功能-地图导航”进行设置。

三 、如何绑定位置信息

右侧面板设置好地图导航,点击“地图管理-功能数据管理-地图管理”添加地址,填写公司名称、位置信息,保存;返回编辑页面并点击保存,然后刷新页面,选择文本并点击“事件-功能-绑定地址”,会出现我们刚设置好的“公司名称”,选中他即绑定成功。说明:可显示路线并调用手机上“地图app”。

好了,今天的学习就到了,**姐希望阔爱的你可以鼓起勇气,用上地图导航,让它引导你走到心上那个人儿所在的地方。恋人也罢,朋友、亲人也罢,相信你将不虚此行~

测试发现 小程序组件(这里指底部导航组件)生命周期的attached 不支持 *** 作 也就是 当想修改底部导航的内容是不支持的

所以上述写法会出现惊奇的结果 哈哈 可以自行运行看看

先了解一下小程序组件的生命周期

[上传中(image-9202b1-1629959126527-0)]

于是我使用了ready 测试发现 部分安卓机 可以 *** 作数据 但是页面底部导航不会更新

看文档发现:

自小程序基础库版本 223 起,组件的的生命周期也可以在 lifetimes 字段内进行声明(这是推荐的方式,其优先级最高)。

于是, (这里是在小程序底部导航组件里写这个方法)

测试发现 还是没有更改过来

找资料看到

即可

在一个微信小程序中想要用到两种不同的tabbar样式,需要在appjs中自定义,在页面加载时进行调用。

比如一个小程序需要两个版本(用户版、商家版),并且能通过一个按钮在两个版本间进行切换,可能会用到这种方式。

此处以两个页面(index,logs)显示两种tabbar样式为例,通过切换按钮进行切换。

首先有一个模板文件:tabbarwxml

在appjson中无需定义“tabBar”

在appjs中自定义如下

在appwxss中定义显示样式

indexwxml,用到自定义tabbar的页面的首部都需要引入模板文件

indexjs

logsjs

加载自定义tabbar的那句话(appeditTabBar)写在onload或onshow中都可以。

只写了两个主页面,其他页面可自行定义跳转。

最后放上效果图:

以上就是关于微信小程序-自定义导航栏全部的内容,包括:微信小程序-自定义导航栏、微信小程序如何设置地图导航、小程序动态加载底部导航(根据不同角色展示不同导航栏)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10112883.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存