微信小程序|实现界面滑动切换


本文首发于微信公众号: "算法与编程之美",欢迎关注,及时了解更多此系列文章。

问题描述 

在许多用户体验效果较好的微信小程序中,用户通过左右滑动界面也能实现页面的切换,方便了用户使用,那它们是如何实现的呢?

解决方案 

图 1   标签页切换

在图1中,顶部的 3 个标签页标题用 0 、 1 、 2 来表示,当前显示为标签页 0 。当用户向左滑动页面时,标签页 0 就会被划到左边的不可见区域,而标签页 1 被划入可见区域。如果用户在向右滑动页面,则标签页 1 被滑动到右边的不可见区域,标签页 0 被划入可见区域。

问题解决

S wiper 组件是滑块视图容器,经常用于实现轮播图,现在我们将他用于实现标签页的切换。代码如下所示:

<swiper>

<swiper-item style= ” background:#aaa ” >0</swiper-item>

<swiper-item style= ” background:#bbb ” >1</swiper-item>

<swiper-item style= ” background:#ccc ” >2</swiper-item>

</swiper>

在上述代码中,<swiper>标签是外层容器,里面有 3 个 <swiper-item> 标签,表示当前一共有 3 项,在初始状态下只显示第 1 项,向左滑动显示第 2 项,再向右滑动可以返回第 1 项。

微信小程序并没有严格规定<swiper-item>标签内可以嵌套哪些组件,如果放入 image 组件,就实现了轮播图效果;如果放入一块页面内容,就实现了标签页切换的效果了。

I nclude 代码引用

在wxml文件中可以使用 <include> 标签引用其他文件中的代码,相当于把引用的代码复制到 <include> 标签的位置。 <include> 标签的用途主要有两点:

当一个wxml页面中的代码过多时,会给代码的维护带来麻烦,有时为了找到某一处代码可能翻阅几百行。而利用 <include> 将代码拆分到多个文件中,这样就可以方便的查找代码。

当多个wxml页面中有相同的部分时,可以将这些公共的部分抽取出来,保存到一个单独的 wxml 文件中,然后在用到的地方通过 <include> 引入。这样可以减少重复的代码,并且修改时只需要修改一次。

下面演示<include>标签的使用:

<include src= ” index.wxml ” /> // 引入 index.wxml 文件

<view>body</view>

<include scr= ” logs.wxml ” /> // 引入 logs.wxml 文件

结语 

在调试代码的过程中会遇上很多问题,有可能一个错误你调试了大半天还是没能解决,这个时候我们要做的就是暂时放下它,等再过一会再来仔细的分析错误原因和代码逻辑。

END

相关文章

概述 消息能力是小程序能力中的重要组成,我们为开发者提供了...
判断H5页面环境在微信中还是小程序中 用小程序提供的wx.mini...
wx.reLaunch和wx.navigateTo,wx.navigateTo的区别 2019-03-...
微信小程序如何从数组里取值_微信小程序 传值取值的几种方法...
H5项目接入微信授权登录,通过 UA 区分微信还是普通浏览器:...
微信小程序获取data-xx=&quot;&quot;属性的值,自定...