欢迎光临,了解微信小程序开发,就上易用通!

小程序之豆瓣电影源码解读

发布:2018-04-25 08:52浏览: 来源:网络 作者:cola

项目是从github上面下载的,因为本人觉得项目做得非常棒,含括了一些巧妙的解决思路,所以写一篇文章,将其源码精髓部分,抽出来给大家讲讲~~

先看项目效果:

 

小程序之豆瓣电影源码解读(图1)

首页效果

 

一、loading加载和自定义上拉刷新

1)loading加载效果:

 

小程序之豆瓣电影源码解读(图2)

 

细心同学可能发现,热映、待映、口碑等tab页面都有loading加载特效,那么对于这么一个共用的特效,作者是如何处理的呢。

公共组件component目录下的filmList下面:

<template>
    <block wx:if="{{showLoading}}">
        <view class="loading">玩命加载中…</view>
    </block>
</template>

A页面如何引用:

<import src="../../component/filmList/filmList.wxml"/>

B页面如何引用:

<import src="../../component/filmList/filmList.wxml"/>

所以不管A页面还是B页面,都可以引用自定义loading特效。

2)自定义上拉刷新特效:

 

小程序之豆瓣电影源码解读(图3)

 

如图,上拉到底的时候,出现 '拼命加载中...',然后加载更多电影,其实原理很简单,就是在page中的上拉刷新事件onReachBottom中刷新电影列表数据即可。

电影列表wxml代码:

<block wx:for="{{films}}" wx:for-index="filmIndex" wx:for-item="filmItem" wx:key="film">
    ...  //电影列表
</block>
<block wx:if="{{hasMore}}">
    <view class="loading-tip">拼命加载中…</view>
</block>

上面代码很清晰, 其实 '拼命加载中...' 一直都在电影列表下面,所以当我拉到底部的时候,就会看到 '拼命加载中...' , 所以我只需要更新电影列表数据即可。看起来就变成,当我拉到最底下时候出现 '拼命加载中...' ,同时电影更新, 这个小技巧给赞。






免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。