先来说明一下我们需要实现的最终效果:
- tab标题有多个,一屏内无法全部显示,所以使用 scroll-view组件,使其可横向滚动。
- 点击切换tab标题时,内容区随之切换;内容区左右滑动切换时,tab标题也随之切换。所以使用swiper组件实现左右切换。
- 每个tab标题样式一致;当内容区几个页面样式一样时,可以用wx:for循环遍历重复出来。
- 当选中的tab标题不在当前屏显示时,要使其能显示到当前屏中。
下面我们直接看代码:
1. WXML
1、设置data-current属性用于:点击当前项时,通过点击事件swichNav中处理e.dataset.current取到点击的目标值。
2、swiper组件的current组件用于控制当前显示哪一页3、swiper组件绑定change事件switchTab,通过e.detail.current拿到当前页
1 | <view> |
2. JS
1 | let tabNum = 0; // 当前选中第几个tab标题 |
3. WXSS
根据自己需求进行样式设置
1 | /* ======================================= |