需求分析:加载更多

Part.One 功能概述

功能名称

加载更多

功能描述

点击“加载更多”按钮、或上拉列表时,加载更多的内容。

使用场景

当一个页面有较多的信息要展示给用户时,为了减少用户单次请求对服务器产生的性能压力和时间损耗,每次只加载固定数量的少量信息。用户浏览完之后,再向服务器发起请求,加载更多内容。

常用于内容列表,如图文列表、资讯列表、专题列表、评论列表等。

常见案例

淘宝搜索结果页商品列表、简书文章列表、网易云音乐精彩评论列表、脉脉匿名八卦的热门评论、混沌大学热文列表等。

Part.Two 功能分析

数据流向图

该功能实现逻辑是:

1.前端通过接口,向后台发起请求;

2.接口将用户信息、当前页数传到后台;

3.后台接受信息,获取下一页数据列表;

4.从数据库中提取下一页数据;

5.对数据进行排序;

6.后台通过接口,将数据回传给前端;

7.前端接收信息,并将信息按既定样式展示出来。

用数据流转图表示如下:

数据流向图-加载更多

触发方式

大部分产品都使用以下两种方式来触发“加载更多”功能:

上拉列表页面:在淘宝的商品搜索结果页,当页内容浏览完后,上拉页面,将自动加载更多商品。

点击加载更多按钮:如人人都是产品经理点击列表页面底部的“加载更多”按钮加载。如下图:

需求点描述-交互

以“混沌大学热文列表”为例:

1.页面滚动到底部时,稍微上拉列表:底部显示“上拉可以加载更多”提示,向服务器发起加载更多内容的请求。

2.上拉列表:底部显示“松开立即加载更多”提示。

3.松开:底部显示“正在加载更多的数据”提示和loading动画,向服务器发起加载更多内容的请求。

4.加载完成:loading动画和提示消失,直接显示加载的内容。

需要说明的是,每次加载的内容数,根据需要设定,不建议加载过多,导致请求时间过长。如每条记录都希望用户点进去看,最好10条以内。若每条记录都只需用户一扫而过,可适当增加数量。

需求点描述-异常

1.无网络或服务器繁忙:请求失败后,弹出toast提示“网络异常”。

2.无更多内容:当内容列表中没有更多内容时,弹出toast提示“暂无更多内容,请稍后再试”。

体验细节

在做功能点调研时,我看到一些创新的设计方案。

1.页面滚动到某个位置时,自动加载更多,不需要用户可以去拉。如淘宝的商品列表;

2.页面滚动到底部时,适当上拉,即自动开始发起加载更多请求,并显示“正在加载”提示和loading动画,省略了其他的显示逻辑。如得到app的专栏文章列表。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,804评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,262评论 4 61
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,032评论 19 139
  • 8月底,开学啦~就这样,带着对过往的不舍和遗憾,开始了我的研究生生涯…在这里,生活中的角色换了另一批人:最最亲爱的...
    米小恬阅读 206评论 0 0
  • 8月10日 星期四 大雨 下午2.30左右下了两阵雨后,天空中太阳露出来笑脸。我们以为天气晴朗不能再...
    王心如妈妈阅读 349评论 0 0