微信小程序组件 - 自定义导航条(支持返回home主页)

GitHub Demo 地址: jh-weapp-demo 实现一些常用效果、封装通用组件和工具类

小程序中默认的导航条只能设置背景色,标题等效果有限,因此需要使用自定义导航条,源码请在demo查看

jh-navba

jh-navbar:基于vant的navbar二次封装,支持设置渐变背景色、网络、本地背景图,左侧文字,左侧图片,左侧、标题solt,隐藏返回按钮

默认效果

<jh-navbar title="渐变导航" />
请添加图片描述

渐变背景色

<jh-navbar bgColor='linear-gradient(45deg, #f43f3b, #ec008c)' title="标题" />
请添加图片描述

透明背景,隐藏返回按钮

<jh-navbar bgColor='transparent' isBack='{{false}}'/>
请添加图片描述

左侧文字

<jh-navbar title="标题" leftText='设置' bind:left="onClickLeft" /> 
请添加图片描述

左侧图片

<jh-navbar title="标题" leftImg='../../images/ic_nav_set.png' bind:left="onClickLeft" />
请添加图片描述

左侧solt

<jh-navbar leftSlot title="标题">
  <view slot="left">自定义slot</view>
</jh-navbar> 
请添加图片描述

网络背景图(推荐)

<jh-navbar title="标题" bgImage="https://img.yzcdn.cn/vant/cat.jpeg" />
在这里插入图片描述

本地背景图(base64)

本地背景图要把图片转成base64图片使用,在js代码中定义转换后的base64图片:localImage,然后在wxml中使用

图片转base64网站:http://tool.chinaz.com/tools/imgtobase

  <jh-navbar title="本地背景图(base64)" bgImage="{{localImage}}" />
在这里插入图片描述

标题slot

  <jh-navbar>
    <view slot="title">
      <van-search value="{{ value }}" placeholder="关键词" background="transparent" custom-class="search" shape="round"/>
    </view>
  </jh-navbar>
在这里插入图片描述

jh-custom-navbar

jh-custom-navbar:支持设置渐变背景色、网络、本地背景图,左侧返回文字,可设置显示home主页按钮,标题slot
因为涉及胶囊按钮样式,在app.js中通过wx.getSystemInfo获取一些尺寸信息,然后在组件中使用,这样只获取一次即可

注意:

在获取胶囊按钮样式信息中发现,iOS上获取的数据异常,然后通过异常的胶囊按钮数据算出的导航条高度不对。熟悉iOS的应该知道,iOS设备的状态栏的高度为:20(非刘海屏)或 44(刘海屏),标题栏高度为:44。因此暂时判断如果是iOS设备,把标题栏高度直接设置为 44,其他端还按照下面计算方式计算:

导航条高度 = 状态栏高度 + ( 标题栏高度=胶囊按钮高度+(胶囊按钮Top-状态栏高度)*2 )

   X {"width":87,"height":32,"left":281,"top":48,"right":368,"bottom":80}
 非X {"width":87,"height":32,"left":281,"top":24,"right":368,"bottom":56}

在微信开放社区看到的其他计算方式

在这里插入图片描述

默认效果

  <jh-custom-navbar title="默认" />
在这里插入图片描述

渐变背景色

 <jh-custom-navbar title="渐变背景色" bgColor='linear-gradient(45deg, #f43f3b, #ec008c)' />
在这里插入图片描述

网络背景图

<jh-custom-navbar title="网络背景图" bgImage="https://img.yzcdn.cn/vant/cat.jpeg" />
在这里插入图片描述

隐藏返回按钮

  <jh-custom-navbar title="隐藏返回按钮" bgColor=' linear-gradient(45deg, #f43f3b, #ec008c)' isBack='{{false}}' />
在这里插入图片描述

带返回文字

  <jh-custom-navbar title="带返回文字" bgColor=' linear-gradient(45deg, #f43f3b, #ec008c)' backText='返回' />
在这里插入图片描述

带home主页按钮

 <jh-custom-navbar home title="home" />
在这里插入图片描述

home+渐变背景色

   <jh-custom-navbar home title="home+渐变背景色" bgColor='linear-gradient(45deg, #f43f3b, #ec008c)' />
在这里插入图片描述

home+网络背景图

  <jh-custom-navbar home title="home+网络背景图" bgImage="https://img.yzcdn.cn/vant/cat.jpeg" />
在这里插入图片描述

home+本地背景图

本地背景图要把图片转成base64图片使用,在js代码中定义转换后的base64图片:localImage,然后在wxml中使用

图片转base64网站:http://tool.chinaz.com/tools/imgtobase

 <jh-custom-navbar home title="home+本地背景图(base64)" bgImage="{{localImage}}" />
在这里插入图片描述

隐藏返回按钮

  <jh-custom-navbar home title="隐藏返回按钮" bgImage="https://img.yzcdn.cn/vant/cat.jpeg" isBack='{{false}}' />
在这里插入图片描述

标题slot

  <jh-custom-navbar home bgImage="https://img.yzcdn.cn/vant/cat.jpeg">
    <view slot="title">
      <van-search value="{{ value }}" placeholder="关键词" background="transparent" custom-class="search" shape="round" />
    </view>
  </jh-custom-navbar>
在这里插入图片描述
?著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,172评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,346评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事?!?“怎么了?”我有些...
    开封第一讲书人阅读 159,788评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,299评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,409评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,467评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,476评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,262评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,699评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,994评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,167评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,827评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,499评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,149评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,387评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,028评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,055评论 2 352

推荐阅读更多精彩内容