前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >自定义微信导航栏

自定义微信导航栏

作者头像
前端黑板报
发布2018-12-21 16:53:57
8300
发布2018-12-21 16:53:57
举报
文章被收录于专栏:前端黑板报前端黑板报

在app.json - window 中开启自定义配置

"navigationStyle" : "custom"

首页的代码:

custom.js

代码语言:javascript
复制
/**
   * 页面的初始数据
   */
  data: {
    bar_Height: wx.getSystemInfoSync().statusBarHeight,
    pos: 0
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * tab选择事件
   */
  tabSelect: function (e) {
    this.setData({
      pos: e.currentTarget.dataset.pos
    })
  },

作者:beatzcs
链接:https://www.jianshu.com/p/8dbadb870382
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

custom.json

代码语言:javascript
复制
{  "enablePullDownRefresh": true}

custom.wxml

代码语言:javascript
复制
<view class='status-bar'>
 <view class='tabar' style='padding-top:{{bar_Height}}px;'>
   <text class='{{pos==0?"active":""}}' bindtap='tabSelect' data-pos='0'>推荐</text>
   <text class='{{pos==1?"active":""}}' bindtap='tabSelect' data-pos='1'>热门</text>
 </view>
</view>

custom.wxss

代码语言:javascript
复制
.status-bar {  
    width: 100%;  background-color: #fdd901;
}
.tabar {  
    display: flex;  justify-content: center;
}
.tabar text {  
    padding: 25rpx 30rpx;  color: #353535;  font-size: 12pt;
}
.tabar .active {  
    color: #fff;
}

个人中心代码:

mine.js

代码语言:javascript
复制
/**
  * 页面的初始数据
  */
 data: {   
      bar_Height: wx.getSystemInfoSync().statusBarHeight
 },

mine.wxml

代码语言:javascript
复制
<view class='tabar' style='top:{{bar_Height}}px;'>
 <view>个人中心</view>
</view>

mine.wxss

代码语言:javascript
复制
.tabar {  
     width: 100%;  
     box-sizing: border-box;  
     position: fixed;  
     text-align: center;  
     font-size: 12pt;  
     color: #fff;  
     background-color: #6cbc72;
}
.tabar view {  
     padding: 25rpx 0rpx;
}

虽然自定义效果还不错,但是要注意进行微信版本的兼容问题,window.navigationStyle 只能支持 6.6.0 以上微信版本,对应基础库版本为 1.9.1。如果需要针对低版本微信进行兼容,要做好兼容性适配。

感觉有一点不好的地方是,一旦开启了自定义,每个页面都要用自定义的导航栏,这就很无奈。比较适合页面数量较少的小程序中,页面较多最好使用<template>进行统一的顶部布局。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-11-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端黑板报 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档