|
導讀微信小程序,簡稱小程序,英文名Mini Program,是一種不需要下載安裝即可使用的應用,它實現了應用“觸手可及”的夢想,用戶掃一掃或搜一下即可打開應用。小程序是一種不用下載就能使用的應用,也是一... 微信小程序,簡稱小程序,英文名Mini Program,是一種不需要下載安裝即可使用的應用,它實現了應用“觸手可及”的夢想,用戶掃一掃或搜一下即可打開應用。小程序是一種不用下載就能使用的應用,也是一項門檻非常高的創新,經過將近兩年的發展,已經構造了新的小程序開發環境和開發者生態。 微信小程序中選項卡的應用隨處可見,本篇文章就來給大家介紹微信小程序中選項卡的實現。思路
小程序中的swiper組件功能還是比較有限的,有待優化。 方案1.首先在js中設置數據 data: {
tabs: ['菜單一', '菜單二'],// 導航菜單欄
curIdx:0,// 當前導航索引
scrollHeight:0, //滾動高度 = 設備可視區高度 - 導航欄高度
list:[],// 內容區列表
},在onLoad函數中填充數據 /**
* 生命周期函數--監聽頁面加載
*/
onLoad: function (options) {
let list=[];
for (let i=1;i<=30;i++){
list.push(i)
}
this.setData({
list: list
});
},2.在WXML中循環渲染出導航<!-- 導航欄開始 -->
<view class="swiper-tab">
<view wx:for="{{tabs}}" wx:key class="swiper-tab-item {{curIdx==index?'swiper-active':''}}" data-current="{{index}}" catchtap="clickTab">
<text>{{item}}</text>
</view>
</view>3.設置當前活動導航樣式/*初始化樣式*/
view, text, picker, input, button, image{
display: flex;
box-sizing: border-box;
}
/* 導航樣式*/
.swiper-tab {
position: relative;
width: 100%;
height: 100rpx;
justify-content: center;
align-items: center;
}
.swiper-tab-item {
background-color: #f3f3f3;
width: 50%;
height: 80rpx;
justify-content: center;
align-items: center;
}
.swiper-active{
background-color: rgb(129, 190, 247);
color: #fff;
}4.內容顯示區內容顯示區使用swiper組件,swiper-item個數要與tabs數組長度 一致 <!-- 內容開始 -->
<swiper class="swiper_content" current="{{curIdx}}" bindchange="swiperTab" style='height:{{scrollHeight}}px'>
<swiper-item>
<scroll-view class="scroll-y" scroll-y style='height:{{scrollHeight}}px' bindscrolltolower="onReachBottom">
<view wx:for="{{list}}" wx:key>
<text> 內容一{{item}}</text>
</view>
</scroll-view>
</swiper-item>
<swiper-item>
內容二
</swiper-item>
</swiper>
onShow: function () {
// 100為導航欄swiper-tab 的高度
this.setData({
scrollHeight: wx.getSystemInfoSync().windowHeight - (wx.getSystemInfoSync().windowWidth / 750 * 100),
})
},5.點擊導航欄切換內容 //點擊切換
clickTab: function (e) {
this.setData({
curIdx: e.currentTarget.dataset.current
})
},6.滑動內容切換導航欄 //滑動切換
swiperTab: function (e) {
this.setData({
curIdx: e.detail.current
});
},7.可滾動區域滾動最底刷新數據
/**
* 頁面上拉觸底事件的處理函數
*/
onReachBottom: function () {
// 更新列表
let list = this.data.list;
console.log(list)
let lens = list.length
for (let i = lens; i < lens+30; i++) {
list.push(i)
}
this.setData({
list: list
});
},一個漂亮的選項卡就完成了。完整案例 以上就是本篇文章的全部內容了,更多精彩請關注php中文網。 以上就是微信小程序中選項卡的實現方法的詳細內容,更多請關注php中文網其它相關文章! 小程序是一種不需要下載安裝即可使用的應用,它實現了應用“觸手可及”的夢想,用戶掃一掃或者搜一下即可打開應用。 |
溫馨提示:喜歡本站的話,請收藏一下本站!