微信小程序导航栏自定义有以下几种方式:{"navigationStyle":"custom"//将navigationStyledefault改为custom}definition这个方法之后,头部的导航栏会被去掉,元素导航栏下方会直接上移到原导航栏的位置。您可以在app.json中配置全局沉浸式导航栏,在单个页面配置沉浸式导航栏。.方法二使用组件这里使用vant组件作为demo组件配置的NavBar。样式在官方文档中有说明,可以根据文档说明修改样式。官方文档:https://vant-contrib.gitee.io/vant-weapp/#/nav-bar模型适配由于自定义navBar,导航栏下方的元素会直接向上偏移,与顶部的距离需要的时候才能回到正常位置。这个时候设置的距离根据不同的机型,位置会不一样,所以这里需要适配机型。方法一:根据微信小程序capsule到顶部的高度和capsule的高度计算navBar下的内容到顶部的距离//jsletpillHeight=wx.getMenuButtonBoundingClientRect().top//capsule到的高度thetopletpill=wx.getMenuButtonBoundingClientRect().height//胶囊的高度this.setData({topHeight:pillHeight+pill})//页面动态设置margin-top高度
