微信小程序---Tab标签页

效果图

  1. wxml代码
<block>
  <view class='header'>
    <navigator url="../index/index" hover-class="navigator-hover" open-type="switchTab">
      <text class='iconfont .icon-jiantou-zuo icon-left'></text>
    </navigator>
    <text class='title'>我的订单</text>
  </view>
  <view class="swiper-tab">  
    <view class="swiper-tab-list {{currentTab==0 ? 'on' : ''}}" data-current="0" bindtap="swichNav">未支付</view>  
    <view class="swiper-tab-list {{currentTab==1 ? 'on' : ''}}" data-current="1" bindtap="swichNav">已支付</view>  
    <view class="swiper-tab-list {{currentTab==2 ? 'on' : ''}}" data-current="2" bindtap="swichNav">已取消</view>  
    <view class="swiper-tab-list {{currentTab==3 ? 'on' : ''}}" data-current="3" bindtap="swichNav">已完成</view>  
    <view class="swiper-tab-list {{currentTab==4 ? 'on' : ''}}" data-current="4" bindtap="swichNav">待评价</view>  
    <view class="swiper-tab-list {{currentTab==5 ? 'on' : ''}}" data-current="5" bindtap="swichNav">已评价</view>  
  </view>  
  
  <swiper current="{{currentTab}}" class="swiper-box" duration="300" style="height:{{winHeight - 31}}px" bindchange="bindChange">
  <!-- list1  -->
      <swiper-item>   
       111
      </swiper-item> 
  <!-- list2  -->
      <swiper-item>  
       222
      </swiper-item>  
  <!-- list3  -->
      <swiper-item>  
       333
      </swiper-item>  
  <!-- list4  -->
      <swiper-item>  
       444
      </swiper-item>  
  <!-- list5  -->
      <swiper-item>  
       555
      </swiper-item>  
  <!-- list6  -->
      <swiper-item>  
       666
      </swiper-item>  
  </swiper> 
</block>


  1. wxss代码
.swiper-tab{  
    width: 100%;  
    border-bottom: 1px solid #dadada;
    text-align: center;  
    line-height: 80rpx;
}  
.swiper-tab-list{  
    font-size: 30rpx;  
    display: inline-block;  
    width: 16%;  
}  
.on{
   border-bottom: 5rpx solid #63b4ad;
}   
.swiper-box{ 
  display: block; 
  height: 100%; 
  width: 100%; 
  overflow: hidden;
}   
.swiper-items{
  height: 100%;
}
.scroll-views{
  height: 100%;
}
  1. js代码
 /**
   * 页面的初始数据
   */
  data: {
    // tab切换  
    currentTab: 0
  },
 /** 
    * 滑动切换tab  
    */
  bindChange: function (e) {

    var that = this;
    that.setData({ currentTab: e.detail.current });

  },
  /** 
   * 点击tab切换 
   */
  swichNav: function (e) {

    var that = this;
    if (this.data.currentTab === e.target.dataset.current) {
      return false;
    } else {
      that.setData({
        currentTab: e.target.dataset.current
      })
    }
  }


  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个简单的微信小程序滑动Tap标签的实现示例: 1. 在`app.json`中设置`tabBar`属性,用于定义底部标签栏的样式和内容。例如: ``` "tabBar": { "color": "#999999", "selectedColor": "#007aff", "backgroundColor": "#ffffff", "borderStyle": "black", "list": [ { "pagePath": "pages/index/index", "text": "首" }, { "pagePath": "pages/category/category", "text": "分类" }, { "pagePath": "pages/cart/cart", "text": "购物车" }, { "pagePath": "pages/user/user", "text": "个人中心" } ] } ``` 2. 在`pages`目录下创建对应的面文件,例如`index`、`category`、`cart`和`user`,并在每个面的`wxml`文件中定义一个`scroll-view`组件和一个`swiper`组件。例如: ```html <!-- index.wxml --> <scroll-view class="tab-scroll-view" scroll-x="true"> <swiper class="tab-swiper" current="{{current}}" bindchange="swiperChange"> <swiper-item> <view>标签1</view> </swiper-item> <swiper-item> <view>标签2</view> </swiper-item> <swiper-item> <view>标签3</view> </swiper-item> </swiper> </scroll-view> ``` ```html <!-- category.wxml --> <scroll-view class="tab-scroll-view" scroll-x="true"> <swiper class="tab-swiper" current="{{current}}" bindchange="swiperChange"> <swiper-item> <view>标签1</view> </swiper-item> <swiper-item> <view>标签2</view> </swiper-item> <swiper-item> <view>标签3</view> </swiper-item> </swiper> </scroll-view> ``` ```html <!-- cart.wxml --> <scroll-view class="tab-scroll-view" scroll-x="true"> <swiper class="tab-swiper" current="{{current}}" bindchange="swiperChange"> <swiper-item> <view>标签1</view> </swiper-item> <swiper-item> <view>标签2</view> </swiper-item> <swiper-item> <view>标签3</view> </swiper-item> </swiper> </scroll-view> ``` ```html <!-- user.wxml --> <scroll-view class="tab-scroll-view" scroll-x="true"> <swiper class="tab-swiper" current="{{current}}" bindchange="swiperChange"> <swiper-item> <view>标签1</view> </swiper-item> <swiper-item> <view>标签2</view> </swiper-item> <swiper-item> <view>标签3</view> </swiper-item> </swiper> </scroll-view> ``` 3. 在每个面的`js`文件中定义`current`属性和`swiperChange`方法,用于控制当前显示的标签。例如: ```javascript // index.js Page({ data: { current: 0 }, swiperChange: function(e) { this.setData({ current: e.detail.current }) } }) ``` ```javascript // category.js Page({ data: { current: 0 }, swiperChange: function(e) { this.setData({ current: e.detail.current }) } }) ``` ```javascript // cart.js Page({ data: { current: 0 }, swiperChange: function(e) { this.setData({ current: e.detail.current }) } }) ``` ```javascript // user.js Page({ data: { current: 0 }, swiperChange: function(e) { this.setData({ current: e.detail.current }) } }) ``` 4. 在`app.wxss`中定义`tab-scroll-view`和`tab-swiper`的样式,用于控制标签栏和标签的显示。例如: ```css .tab-scroll-view { height: 44rpx; white-space: nowrap; overflow-x: auto; overflow-y: hidden; -webkit-overflow-scrolling: touch; } .tab-swiper { width: 100%; height: 100%; display: flex; flex-direction: row; justify-content: flex-start; align-items: stretch; } ``` 这样就完成了微信小程序滑动Tap标签的实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值