angular+ionic 的app上拉加载更新数据实现方法


Posted in Javascript onJanuary 16, 2017

第一步,首先需要在<ion-content>标签里面加入标签<ion-infinite-scroll ng-if="hasmore" on-infinite="loadMore()" distance="5%"></ion-infinite-scroll>

里面的属性解释,

ng-if  值 布尔型,如果为true,则可以触发上拉事件
on-infinite 上拉时触发的事件
distance 列表底部滚动到可触发上拉事件的距离,默认为1%
icon 加载时显示的加载图标,默认为 'ion-loading-d'

第二步:在控制器内书写

$scope.hasmore = true;

定义可触发事件的对象

然后书写loadMore事件

//上拉事件 
    $scope.loadMore = function () { 
      $scope.dataValue.page++; 
      loadajax(); 
    }

然后写loadajax事件

function loadajax() { 
      var dataValue = $scope.dataValue; 
      var ip = "http://" + $rootScope.form.ip + "/appGetpage"; 
      var req = { 
        method: 'POST', //请求的方式 
        url: ip, //请求的地址 
        headers: { 
          'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8', 
          'Accept': '*/*' 
        }, //请求的头,如果默认可以不写 
        timeout: 5000, //超时时间,还没有测试 
        data: "value=" + JSON.stringify(dataValue) //message 必须是a=b&c=d的格式 
      }; 
      $http(req).success(function (data) { 
        if (data.data.length == 0) { 
          $scope.hasmore = false;//这里判断是否还能获取到数据,如果没有获取数据,则不再触发加载事件 
          return; 
        } 
        $scope.items = $scope.items.concat(data.data); 
      }).error(function () { 
        console.log("err"); 
      }).finally(function () { 
        $scope.$broadcast('scroll.infiniteScrollComplete');//这里是告诉ionic更新数据完成,可以再次触发更新事件 
        $scope.$broadcast('scroll.refreshComplete'); 
      }); 
    }

以上所述是小编给大家介绍的angular+ionic 的app上拉加载更新数据实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
基于Jquery实现的一个图片滚动切换
Jun 21 Javascript
js中document.write使用过程中的一点疑问解答
Mar 20 Javascript
node.js中的path.normalize方法使用说明
Dec 08 Javascript
javascript删除元素节点removeChild()用法实例
May 26 Javascript
Jquery-data的三种用法
Apr 18 jQuery
jQuery插件开发发送短信倒计时功能代码
May 09 jQuery
Vue.js划分组件的方法
Oct 29 Javascript
jQuery 实现左右两侧菜单添加、移除功能
Jan 02 jQuery
js for终止循环 跳出多层循环
Oct 04 Javascript
VueJS 取得 URL 参数值的方法
Jul 19 Javascript
javascript设计模式 ? 迭代器模式原理与用法实例分析
Apr 17 Javascript
浅谈Vuex的this.$store.commit和在Vue项目中引用公共方法
Jul 24 Javascript
jQuery实现简易的输入框字数计数功能示例
Jan 16 #Javascript
谈谈Vue.js——vue-resource全攻略
Jan 16 #Javascript
Javascript的this用法
Jan 16 #Javascript
jQuery向webApi提交post json数据
Jan 16 #Javascript
详解Html a标签中href和onclick用法、区别、优先级别
Jan 16 #Javascript
jQuery插件扩展操作入门示例
Jan 16 #Javascript
jQuery插件版本冲突的处理方法分析
Jan 16 #Javascript
You might like
SONY SRF-22W(33W)的电路分析和维修案例
2021/03/02 无线电
PHP4在Windows2000下的安装
2006/10/09 PHP
基于php判断客户端类型
2016/10/14 PHP
PHP检测数据类型的几种方法(总结)
2017/03/04 PHP
Yii2框架配置文件(Application属性)与调试技巧实例分析
2019/05/27 PHP
js 三级关联菜单效果实例
2013/08/13 Javascript
jquery淡化版banner异步图片文字效果切换图片特效
2014/04/08 Javascript
gulp-uglify 与gulp.watch()配合使用时报错(重复压缩问题)
2016/08/24 Javascript
Bootstrap CSS布局之代码
2016/12/17 Javascript
微信小程序 label 组件详解及简单实例
2017/01/10 Javascript
jquery实现全选、全不选以及单选功能
2017/03/23 jQuery
JS匹配日期和时间的正则表达式示例
2017/05/12 Javascript
使用vue-route 的 beforeEach 实现导航守卫(路由跳转前验证登录)功能
2018/03/22 Javascript
vue实现输入框的模糊查询的示例代码(节流函数的应用场景)
2019/09/01 Javascript
详解webpack的clean-webpack-plugin插件报错
2020/10/16 Javascript
python对数组进行反转的方法
2015/05/20 Python
python 平衡二叉树实现代码示例
2018/07/07 Python
python七夕浪漫表白源码
2019/04/05 Python
详解Python time库的使用
2019/10/10 Python
numpy:找到指定元素的索引示例
2019/11/26 Python
python实现的Iou与Giou代码
2020/01/18 Python
在tensorflow中实现去除不足一个batch的数据
2020/01/20 Python
Python 创建TCP服务器的方法
2020/07/28 Python
Python类class参数self原理解析
2020/11/19 Python
HTML5实时语音通话聊天MP3压缩传输3KB每秒
2019/08/28 HTML / CSS
HTML5 canvas基本绘图之绘制曲线
2016/06/27 HTML / CSS
ET Mall东森购物网:东森严选
2017/03/06 全球购物
医学毕业生自荐信
2013/10/11 职场文书
结构工程研究生求职信
2013/10/13 职场文书
自我评价个人范文
2013/12/16 职场文书
大家检讨书5000字
2014/02/03 职场文书
银行求职信怎么写
2014/05/26 职场文书
促销活动总结怎么写
2014/06/25 职场文书
纪检干部先进事迹材料
2014/08/23 职场文书
党员学习群众路线心得体会
2014/11/04 职场文书
自我检讨书范文
2015/01/28 职场文书