欧美91精品国产自产I国产精品免费麻豆入口I国产99久久久国产精品免费看I国产一区网I黄色在线成人I2019天天干夜夜操I久草91视频I91福利专区

027-81331413

微信小程序自定義單頁面、全局導航欄

發布時間:2021-03-27 瀏覽:3756

產品說小程序返回到首頁不太方便,想添加返回首頁按鈕,UI說導航欄能不能設置背景圖片,因為那樣設計挺好看的。

需求分析并制定方案

這產品和UI都提需求了,咱也不能反駁哈,所以開始調研,分析可行性方案:

  1. 可以添加懸浮按鈕

  2. 自定義導航欄

添加懸浮按鈕,是看起來是比較簡單哈,但是感覺不太優雅,會占據頁面的空間,體驗也不太好。所以想了下第二種方案,自定義導航欄既可以實現產品的需求還可以滿足UI的設計美感,在頂部空白處加上返回首頁的按鈕,這樣和返回按鈕還對稱(最終如圖所示,頂部導航欄是個背景圖片,分兩塊組合起來)。

實現方案

一、實現的前提

首先查看文檔,看文檔里關于自定義導航欄是怎么規定的,有哪些限制;還有小程序自定義導航欄全局配置和單頁面配置的微信版本和調試庫的最低支持版本。

在 app.json window 增加 "navigationStyle":"custom",頂部導航欄就會消失,只保留右上角膠囊狀的按鈕,如何修改膠囊的顏色呢;膠囊體目前只支持黑色和白色兩種顏色 在 app.josn window 加上 "navigationBarTextStyle":"white/black"

還要考慮加返回按鈕和返回首頁的按鈕,適配不同的機型。

先說下兩種配置方法:

1、全局配置navigationStyle

  • 調試基礎庫>=1.9.0

  • 微信客戶端>=6.6.0

app.json:

{
 "usingComponents": {
   "navigationBar": "/components/navigationBar/navigationBar"
 },
 "window": {
   "navigationStyle": "custom"
 }
}


2、單頁面配置navigationStyle

  • 調試基礎庫>=2.4.3

  • 微信客戶端版本>=7.0.0

自定義的頁面.json:


{
 "window": {
   "navigationStyle": "default"
 }
}
{
 "navigationStyle": "custom",
 "usingComponents": {
   "navigationBar": "/components/navigationBar/navigationBar"
 }
}


兩者的區別就是,全局配置放在app.json文件里,單頁面配置放在自定義頁面配置文件里。

二、實現的步驟

以下說下幾個要點:

1、自定義導航欄文本,是否顯示返回,是否顯示返回首頁,導航欄高度。

2、 statusBarHeight,用來獲取手機狀態欄的高度,這個需要在全局app.js中的 onLaunch,調用 wx.getSystemInfo 獲取, navigationBarHeight + 默認的高度,這個是設定整個導航欄的高度。

3、還有注意的,在寫樣式距離和大小時建議都用px,因小程序右邊的膠囊也是用的px,不是rpx。

4、因為自定義導航欄每個頁面都要寫,所以把導航欄封裝了公共組件,這樣只需要在每個頁面引入即可。

如下是封裝的導航欄組件:

wxml

<view class="navbar" style="{{'height: ' + navigationBarHeight}}">
 <view style="{{'height: ' + statusBarHeight}}"></view>
 <view class='title-container'>
   <view class='capsule' wx:if="{{ back || home }}">
     <view bindtap='back' wx:if="{{back}}">
       <image src='/images/back.png'></image>        
     </view>
     <view bindtap='backHome' wx:if="{{home}}">
       <image src='/images/home.png'></image>
     </view>
   </view>

   <view class='title'>{{text}}</view>
 </
view>
</view>
<view style="{{'height: ' + navigationBarHeight}};background: white;"></view>


這里有個需注意的問題,就是一般會出現自定義導航欄,下拉頁面,導航欄也隨著會下拉,這種問題是因為設置 fixed 后頁面元素整體上移了 navigationBarHeight,所以在此組件里設置一個空白view元素占用最上面的 navigationBarHeight 這塊高度。

wxss

.navbar {
 width: 100%;
 background-color: #1797eb;
 position: fixed;
 top: 0;
 left: 0;
 z-index: 999;
}
.title-container {
 height: 40px;
 display: flex;
 align-items: center;
 position: relative;
}
.capsule {
 margin-left: 10px;
 height: 30px;
 background: rgba(255, 255, 255, 0.6);
 border: 1px solid #fff;
 border-radius: 16px;
 display: flex;
 align-items: center;
}
.capsule > view {
 width: 45px;
 height: 60%;
 position: relative;
.capsule > view:nth-child(2) {
 border-left: 1px solid #fff;  
}
.capsule image {
 width: 50%;
 height: 100%;
 position: absolute;
 left: 50%;
 top: 50%;
 transform: translate(-50%,-50%);
}
.title {
 color: white;
 position: absolute;
 top: 6px;
 left: 104px;
 right: 104px;
 height: 30px;
 line-height: 30px;
 font-size: 14px;
 text-align: center;
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap;
}


js

const app = getApp()

Component({

 properties: {
   text: {
     type: String,
     value: 'Wechat'
   },
   back: {
     type: Boolean,
     value: false
   },
   home: {
     type: Boolean,
     value: false
   }
 },
 data: {
   statusBarHeight: app.globalData.statusBarHeight + 'px',
   navigationBarHeight: (app.globalData.statusBarHeight + 44) + 'px'
 },

 methods: {
   backHome: function () {
     let pages = getCurrentPages()
     wx.navigateBack({
       delta: pages.length
     })
   },
   back: function () {
     wx.navigateBack({
       delta: 1
     })
   }
 }
})


json

{
 "component": true,
 "usingComponents": {}
}


最終還需要考慮下版本兼容的問題,畢竟還有一些用戶,微信版本并沒有更新到最新版本。

首先可以在app.js里面獲取下當前用戶的微信版本,做下版本比較,如果小于這個版本,設置個全局變量,也可以在組件寫個方法,在不同的頁面打開顯示不同的頂部導航欄,或者可以控制是否顯示導航欄,這里就不詳細說了。

親自試了下,在低于7.0版本的微信中,如果采用單頁面自定義導航欄,會出現兩個導航欄,這時候通過判斷版本號不要再渲染自定義的導航欄組件了,在頁面的配置文件里寫上title名,還有相應的背景色,這樣就會顯示自帶的導航欄了。

總結

小程序開發是有些坑的地方,從不支持自定義導航欄,到支持全局自定義導航欄,再到現在的支持單頁面配置,可以看出在慢慢完善。還有底部tabbar,可自己選擇配置的太少了,雖然也支持自定義,但是發現自定義寫的底部導航組件體驗并不好,每次打開頁面都會重新渲染底部的按鈕,如果全部寫成在一個頁面里的tab切換,雖然按鈕每次不用重新加載了,但是業務多肯定不行,寫到一個單頁面里東西也太多了。希望微信能夠多添加或放開一些功能,讓開發者更好的服務于產品,給用戶更好的體驗。


91亚洲精品久久久蜜桃 | 久久伊人超碰 | 天天做天天爱 | 国产欧美视频在线播放 | a级片在线| 秋霞国产精品 | 性生活三级视频 | 欧美激情一区二区 | 日本在线不卡一区 | 日本免费黄色片 | 久热这里只有精品在线 | 久久神马影院 | 五月天伊人网 | 亚洲AV无码AV吞精久久中文版 | 僵尸艳谈 | 国产亚洲欧美视频 | 黄色av电影网址 | 欧美日韩国产三级 | 欧美用舌头去添高潮 | 亚洲香蕉中文网 | 超碰在线中文字幕 | 欧美黄频| 一本大道av伊人久久综合 | 亚洲免费观看在线 | 久久久999| 日本一级理论片在线大全 | 久草久操| 福利在线影院 | 少妇人妻丰满做爰xxx | 亚洲免费视频一区二区三区 | 欧美无吗| 射射综合网 | 亚洲一卡二卡三卡 | 清纯唯美亚洲综合 | 人人免费操 | 日韩在线观看免费av | 亚洲中字 | 四虎影视免费永久大全 | 国产精品久久久久电影 | 欧美做爰全过程免费看 | 亚洲人成网站999久久久综合 | 美女视频黄的免费 | 中文字幕人妻精品一区 | 九九热九九 | 久久丫丫 | 国产又大又黄又粗 | 少妇饥渴放荡91麻豆 | 欧美一级黄色片网站 | 亚洲精品综合久久 | 日本午夜一区二区 | 欧美激精品 | sao浪受的饥渴日常 小嫩嫩精品导航 | 午夜婷婷网 | 亚洲dvd| 久久六| 天堂中文av在线 | 30一40一50女人毛片 | 亚洲第一视频在线 | 欧美日韩在线免费视频 | 久久国产一区二区 | 亚洲青草视频 | 毛片视| 草草影院最新地址 | 国产剧情在线 | 国产精品999视频 | 一级美女大片 | 国产又粗又硬又长又爽的演员 | 国产精品久久中文字幕 | 亚洲综合久久婷婷 | 91啪在线观看 | 欧美粗大猛烈老熟妇 | aaaaaaa毛片 | 小色哥网站 | xxxxx黄色| 蝌蚪av| 欧美一区二区不卡视频 | 国产男女视频 | 天海翼视频在线观看 | 波多野结衣一区二区三区在线观看 | 成人勉费视频 | 精品视频www| 亚洲免费黄色 | 色香蕉网站 | 亚洲综合久久网 | 奶水旺盛的少妇在线播放 | 69超碰| 亚洲青涩在线 | 亚洲成人三级 | 北京富婆泄欲对白 | 福利电影在线播放 | 69亚洲| 亚洲人色| 在线xxxx | 国产精品va无码一区二区三区 | 免费看黄色的网址 | 亚洲精品理论 | 波多野结衣在线观看视频 | 北条麻纪在线观看aⅴ | 国产精品国产三级国产aⅴ 男人天堂最新网址 | 9l视频自拍九色9l视频成人 | 午夜福利啪啪片 | 久久动态图| 性淫bbwbbwbbw | bbbbbbbbb毛片大片按摩 | 91久久精品美女高潮 | 麻豆网址 | 国产同性人妖ts口直男 | 亚洲最大在线视频 | 成人在线超碰 | 大尺度做爰无遮挡露器官 | 免费福利视频在线观看 | 谁有免费黄色网址 | 亚洲天堂av网 | 日韩综合 | 青青草55 | 中文字幕一区二区三区日韩精品 | 天天综合网站 | 美女看片 | 天堂最新| 97狠狠 | 俄罗斯av在线 | 免费在线性爱视频 | 欧美 唯美 清纯 偷拍 | av在线免费观看一区 | 欧美日韩精品 | 婷婷五月综合久久中文字幕 | 国产精品无码粉嫩小泬 | 国产女人18毛片水真多1 | 日日摸日日| 国内自拍xxxx18 | 好吊视频一区二区三区 | 久久久亚洲成人 | 波多野结衣二区三区 | 亚洲国产一区二区三区 | 高清中文字幕mv的电影 | 精品一区二区三区无码视频 | 顶级尤物极品女神福利视频 | 可以直接观看的av | 国产农村妇女精品一区 | 在线观看中文字幕第一页 | 久久毛片视频 | 污网站在线免费看 | 色播激情| 国产av成人一区二区三区高清 | 日韩一区二区三区四区五区 | 亚洲色图导航 | 小早川怜子一区二区三区 | 国产精品扒开做爽爽爽的视频 | 欧美大片在线 | 伊人午夜 | 灌篮高手全国大赛电影 | 国产麻豆一级片 | 超碰97人| 高清无打码 | 国产又黄又 | 香蕉视频在线观看免费 | 久久福利网 | 成人网一区 | 日本成人免费在线视频 | www色网| 午夜小影院 | 国产精品aaa | 欧美乱做爰xxxⅹ久久久 | 国产高清免费av | 欧美日韩国产免费观看 | 国产精品麻豆一区二区 | 国产成人精品av | 国产男女av | 天天综合天天做 | 男裸体无遮挡网站 | 日韩三级成人 | 嫩草影院av| 粗了大了 整进去好爽视频 小sao货水好多真紧h无码视频 | 久久精品一区二区三区黑人印度 | 一级片久久 | 韩国av电影网站 | 中文字幕一区二区三区日韩精品 | 视频免费在线观看 | 一级黄色av | 免费裸体视频网站 | 天天躁日日躁bbbbb | 黄网视频在线观看 | 日本欧美精品 | 国产一区二区三区久久久 | 国产精品免费电影 | 黄色一级免费大片 | 一区二区三区视频免费在线观看 | 精品人妻大屁股白浆无码 | 日本一本一道 | 午夜视频免费在线 | 色一区二区三区四区 | 男阳茎进女阳道视频大全 | 国产亚洲一区二区不卡 | 蜜桃无码一区二区三区 | 神马午夜精品 | 午夜视频免费在线 | 欧美激情视频在线 | 97xxxx| 久久99精品久久久久子伦 | 奇米在线视频 | 日本美女视频网站 | 三级网站在线 | 五月天开心激情 | 好男人视频www | 国产精品日韩电影 | 日本人添下边视频免费 | 亚洲视频福利 | 夜夜撸av| 国产日韩欧美另类 | 国产69xx| 欧美亚洲综合视频 | 污视频软件在线观看 | 亚洲第一页综合 | 天天高潮夜夜爽 | 动漫美女露胸网站 | 亚洲人交配视频 | 性激情视频 | 国产精品天美传媒入口 | www.av72| 在线免费观看污视频 | 亚洲激情视频在线观看 | 香蕉中文网 | 精品| 男人操女人的视频 | 日本少妇bb | 制服下的诱惑暮生 | 日韩av中文字幕在线 | 色欲久久久天天天精品综合网 | www.夜色 | 韩国女同性做爰三级 | 91碰在线视频 | 美女av一区 | 久久综合导航 | 日韩精品第一 | 免费成人在线播放 | 精品人妻伦一区二区三区久久 | 美国成人免费视频 | 欧美日韩一级在线观看 | 日韩精品一区在线观看 | 国产精品人妻一区二区三区 | 国产成人精品一区二区无码呦 | 2级黄色片| 国产免费一区二区三区在线观看 | www.五月天com | 视频一区二区免费 | 免费在线观看毛片视频 | 成人做爰69片免费看 | 中文字幕在线观看播放 | 秋霞在线一区 | 国产88av| 成人午夜淫片100集 欧美国产综合视频 | 日韩激情图片 | 亚洲欧美变态另类丝袜第一区 | 久久这里只有精品8 | 亚洲视频综合 | 日韩午夜网站 | 成人国产精品 | 欧美日韩亚洲激情 | av专区在线 | xxx一区二区| 欧洲黄色网 | 欧美激情成人网 | 色臀| 国产精品1区 | 在线免费看mv的网站入口 | 韩国伦理在线看 | 四虎网站在线观看 | 理论片中文| 操你啦在线视频 | 日本一二三区不卡 | 午夜影院视频 | 美女扒开腿让人桶爽 | 久久久五月 | 波多野结衣一区二区三区高清av | 色黄啪啪网| 好色av | 天堂福利在线 | 精品成人一区 | 久久精视频 | www免费黄色 | 久久69| 91精品国产91久久久久久久久久久久 | 99精品视频一区二区三区 | 亚洲成人av在线 | 久久男| 国产成人tv | 欧美日韩人妻精品一区在线 | 97在线公开视频 | 国模杨依粉嫩蝴蝶150p | 精品国产乱码一区二区 | 四虎免费影视 | 免费观看高清在线 | 国产免费无遮挡吸奶头视频 | 国产精品久久久久久久久绿色 | 丰满白嫩尤物一区二区 | 色呦呦中文字幕 | 中文在线观看免费 | 吃奶在线观看 | 乱图区| 国产成人自拍视频在线 | 国产婷婷色 | 成人日韩在线观看 | 韩国三级bd高清中字2021 | 大肉大捧一进一出好爽 | 亚洲精品动漫在线观看 | 亚洲奶汁xxxx哺乳期 | 国产一区二区黑人欧美xxxx | 四川少妇xxx奶大xxx | 亚洲精品视频一二三区 | 亚洲av成人精品毛片 | 不卡免费视频 | 久久免费视频3 | 国产精品一二三 | 日本国产网站 | 色中色av| 五月婷婷六月婷婷 | 波多野结衣欲乱上班族 | 成人区一区二区 | 久草视频在线免费播放 | 亚洲风情第一页 | 国产精品精品久久久久久 | 精品日韩在线视频 | 国产欧美日韩成人 | 色狠狠一区二区三区 | 日韩中文字幕在线一区 | 久久无码专区国产精品s | 深爱激情站 | 黄网在线免费观看 | 欧美在线激情视频 | 免费观看成人毛片 | 嫩草视频在线播放 | 国产妇女馒头高清泬20p多 | 欧美绿帽交换xxx | 粉嫩aⅴ一区二区三区四区五区 | 日韩一区二区三区不卡视频 | 性高潮免费视频 | 最近中文字幕在线观看视频 | 久久美女av| 四虎成人网 | 色亚洲视频 | 最色网站 | 亚洲精品高清无码视频 | 日韩av综合网站 | 精品国产99久久久久久宅男i |