微信小程序实战之scroll |
您所在的位置:网站首页 › 关于view的用法 › 微信小程序实战之scroll |
这是我参与更文挑战的第2天,活动详情查看: 更文挑战 前言在开发小程序的过程中,官方自带的组件scroll-view应该是使用的地方很多了,今天就来看看这个组件的n中常见用法。 官方介绍尤大说了文档是个好东西!所以在学习任何东西的时候,首先我们需要做的就是认认真真的去看看官方文档介绍,毕竟很多东西都能够从文档上获取到的。这里还是提供一张官方的文档截图,如下:
上图中漏掉了两个常用的bindscrolltoupper、bindscrolltolower 第一种基础用法这种用法也是最常用的,有两种形式。 定高滚动给定一个高度,让内容在这个高度内容显示,超出可以滑动显示内容,这里的高度可以是小于页面的高度,也可以刚好是页面的高度。代码如下: 这是测试的文字哦 这是测试的文字哦 这是测试的文字哦 这是测试的文字哦 这是测试的文字哦 这是测试的文字哦 这是测试的文字哦 这是测试的文字哦 这是测试的文字哦 这是测试的文字哦 这是测试的文字哦 这是测试的文字哦 这是测试的文字哦 这是测试的文字哦 .demo-scroll-block { width: 100%; height: 200rpx; } 复制代码效果如下:
就是在上面的基础上添加上拉加载更多和下拉更新数据的功能。其实就是运用了两个官方的方法而已。 bindscrolltoupper:滚动到顶部/左边时触发 bindscrolltolower:滚动到底部/右边时触发这里就不具体介绍了,主要就是用着两个方法滚动到顶部时,请求接口更新数据,滚动到底部时加载下一页数据。 第二种用法:左右滚动导航第二种用法也是在做小程序的过程中很常见的用法了,直接上代码: {{item}} navArr:['指南','框架','组件','API','服务端','工具','云开发','扩展能力','更新日志'], navIndex:0, navChange(e){ this.setData({ navIndex:e.currentTarget.dataset.index }) } .demo-scroll-nav { height: 80rpx; } .nav-wrapper { height: 100%; white-space: nowrap; } .nav-wrapper text { display: inline-block; padding: 0 20px; height: 100%; line-height: 80rpx; } .nav-wrapper text.active { color: #ff4400; } 复制代码效果如下:
这种用法我们在生活中经常见到,比如手机中联系人的界面,有的选择地址或者国家页面都有类似功能。主要用到了scroll-view中的scroll-into-view属性,类似网页中锚点的功能。例子如下: A 阿里 阿猫 阿狗 阿里 阿猫 阿狗 阿里 阿猫 阿狗 B 阿里 阿猫 阿狗 阿里 阿猫 阿狗 阿里 阿猫 阿狗 阿里 阿猫 阿狗 阿里 阿猫 阿狗 C 阿里 阿猫 阿狗 阿里 阿猫 阿狗 阿里 阿猫 阿狗 D 阿里 阿猫 阿狗 阿里 阿猫 阿狗 阿里 阿猫 阿狗 A B C D Page({ data: { toView:'block0' }, toViewId(e){ this.setData({ toView:'block'+e.currentTarget.dataset.index }) }, }) .demo-scroll-filter { height: 100vh; } .filter-nav { position: fixed; right: 0; top: 20rpx; } .filter-nav view { padding: 40rpx; background: #ff4400; margin-top: 20rpx; } 复制代码效果如下:
这种用就是点击顶部导航,下面的页面中内容就滚动到相应的地方去。废话不说了,直接上代码: {{item}} {{index}} 阿里 阿猫 阿狗 阿里 阿猫 阿狗 阿里 阿猫 阿狗 Page({ data: { navArr:['指南','框架','组件','API','服务端','工具','云开发','扩展能力','更新日志'], navIndex:0, toView:'block0' }, navChange(e){ this.setData({ navIndex:e.currentTarget.dataset.index, toView:'block'+e.currentTarget.dataset.index }) }, }) .demo-scroll-nav { height: 80rpx; } .nav-wrapper { height: 100%; white-space: nowrap; } .nav-wrapper text { display: inline-block; padding: 0 20px; height: 100%; line-height: 80rpx; } .nav-wrapper text.active { color: #ff4400; } .demo-scroll-filter { height: calc( 100vh - 80rpx ); } 复制代码效果如下:
这种用法多用于外卖,点餐以及商城项目中。效果如下:
上面的例子中左边的导航这里是直接用了view,如果这里内容很多也可以使用scroll-view实现,这个就交给大家自己去实现了,我这里只是抛砖引玉哦。 总结scroll-vew的用法还有很多,目前自己的实际项目中只用这几种方法,如果大家有更多方法,欢迎下面留言探讨哦。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |