起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2676|回复: 4

[处理中3] scrollView 怎样实现下拉加载更多

[复制链接]

34

主题

66

帖子

182

积分

初级会员

Rank: 2

积分
182
QQ
发表于 2017-8-11 09:47:22 | 显示全部楼层 |阅读模式

我现在想实现类似于微信查看聊天记录的功能,要实现下拉加载更多的功能,后台通过ajax将数据加载到data里面,怎样将数据按照时间的到序加载出来,屏幕最底下显示的是最新的消息,往下滑屏的时候怎样让他加载更多的数据,类似与上拉加载更多一样的功能
发表于 2017-8-14 09:46:24 | 显示全部楼层
排序使用data.setOrderBy()
data.refreshData()
就可以根据某个字段排序刷新!

自己接管onCustomRefresh 事件!判断下划的时候,加载最新下一页数据!

data.loadData()  
加载下一页的数据!  指定 index 参数的值为0!  就可以把后加载的数据放在前端了!

具体方法请查询API,有详细介绍!

qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

20

主题

56

帖子

238

积分

中级会员

Rank: 3Rank: 3

积分
238
QQ
发表于 2017-11-20 16:48:35 | 显示全部楼层
liangyongfei 发表于 2017-8-14 09:46
排序使用data.setOrderBy()
data.refreshData()
就可以根据某个字段排序刷新!

//数据刷新接管实现
Model.prototype.masterDataCustomRefresh = function(event){
    /*
    event包含
        {
            "source" : 组件的js对象,
            "cancel" : 可修改,设置为true后中断当前刷新动作,
            "limit" : 页大小,
            "offset" : 偏移,
            "options" : 刷新给入的参数
        }
    */

    //这里简单演示从datas.json文件中取数据,还可以传递limit、offset实现分页的逻辑
    var masterData = event.source;
    $.ajax({
        type: "GET",
        url: require.toUrl('./datas.json'),
        dataType: 'json',
        async: false,//使用同步方式,目前data组件有同步依赖
        cache: false,
        success: function(data){
            masterData.loadData(data);//将返回的数据加载到data组件
        },
        error: function(){
          throw justep.Error.create("加载数据失败");
        }
    });
};

上面的代码是关于手动刷新的api例程,结合你的这段答复,有几个疑问:
1.“判断下划的时候”,这样要在onCustomRefresh 中进行利用代码判断吗,如何判断?
2.api中使用loadData()来加载返回的数据,这样data文件中就只保存了本次返回的数据对吗?
3.如果这时候“上划”回看怎么办?

因为这个要配合后台的,我暂时联调不了,看不到具体的结果,但是从api上看有上述的疑问,请版主给解释解释,谢谢。
回复 支持 反对

使用道具 举报

发表于 2017-11-20 17:05:38 | 显示全部楼层
博众智云 发表于 2017-11-20 16:48
//数据刷新接管实现
Model.prototype.masterDataCustomRefresh = function(event){
    /*

1.不需要判断! 直接吧offset 参数传递到后台就可以了!下划的时候! 环境变量中的offset 值 自动就变成0了!
2.你可以参考/UI2/demo/acc_data/list.w
  1. var append = event.options && event.options.append;
  2.                                 data.loadData(resultData, append);
复制代码

loadData 第二个参数表示是否需要增量加载数据!!这个上下滑动的时候也会自动识别的!


3.
直接参考案例/UI2/demo/acc_data/list.w 看下它的代码实现参考就可以了!
event.options.append;
event.offset
这两个变量 上划和下划 都会变化的! 你不用写代码判断!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

18

主题

72

帖子

225

积分

中级会员

Rank: 3Rank: 3

积分
225
QQ
发表于 2019-2-15 10:58:43 | 显示全部楼层
本帖最后由 chengdu_lifei 于 2019-2-15 11:40 编辑
liangyongfei 发表于 2017-11-20 17:05
1.不需要判断! 直接吧offset 参数传递到后台就可以了!下划的时候! 环境变量中的offset 值 自动就变成0 ...

请问event.options.append这个参数是在哪里设置的,我获取到的始终是false,参考了例子参数设置的都一样,并且我上划加载不能触发 接管刷新
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-4-19 22:33 , Processed in 0.060551 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表