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 行级解析读取XML文件(附源码)
Oct 12 Javascript
通过JS自动隐藏手机浏览器的地址栏实现原理与代码
Jan 02 Javascript
jQuery使用hide方法隐藏元素自身用法实例
Mar 30 Javascript
微信小程序 animation API详解及实例代码
Oct 08 Javascript
Angular表单验证实例详解
Oct 20 Javascript
微信小程序 图片宽高自适应详解
May 11 Javascript
浅谈gulp创建完整的项目流程
Dec 20 Javascript
支付宝小程序tabbar底部导航
Nov 06 Javascript
在vue项目中优雅的使用SVG的方法实例详解
Dec 03 Javascript
使用vue for时为什么要key【推荐】
Jul 11 Javascript
安装多版本Vue-CLI的实现方法
Mar 24 Javascript
前端vue如何使用高德地图
Nov 05 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
怎样去阅读一份php源代码
2009/08/21 PHP
PHP中3种生成XML文件方法的速度效率比较
2012/10/06 PHP
php opendir()列出目录下所有文件的实例代码
2016/10/02 PHP
浅析PHP7 的垃圾回收机制
2019/09/06 PHP
jQuery Div中加载其他页面的实现代码
2009/02/27 Javascript
用Javascript同时提交多个Web表单的方法
2009/12/26 Javascript
jquery插件 cluetip 关键词注释
2010/01/12 Javascript
本地图片预览(支持IE6/IE7/IE8/Firefox3)经验总结
2013/03/25 Javascript
JS中的prototype与面向对象的实例讲解
2013/05/22 Javascript
解决js下referer兼容各大浏览器的方法
2014/11/03 Javascript
详解AngularJS中的作用域
2015/06/17 Javascript
树结构之JavaScript
2017/01/24 Javascript
EasyUI的TreeGrid的过滤功能的解决思路
2017/08/08 Javascript
微信小程序自定义导航栏
2018/12/31 Javascript
js将URL网址转为16进制加密与解密函数
2020/03/04 Javascript
JavaScript语法约定和程序调试原理解析
2020/11/03 Javascript
[01:51]2014DOTA2国际邀请赛 这个赛场没有失败者VGTi5再见
2014/07/23 DOTA
phpsir 开发 一个检测百度关键字网站排名的python 程序
2009/09/17 Python
Python 开发Activex组件方法
2009/11/08 Python
从零学python系列之教你如何根据图片生成字符画
2014/05/23 Python
Django中的“惰性翻译”方法的相关使用
2015/07/27 Python
可能是最全面的 Python 字符串拼接总结【收藏】
2018/07/09 Python
pandas 快速处理 date_time 日期格式方法
2018/11/12 Python
python读取文件名并改名字的实例
2019/01/07 Python
django基于cors解决跨域请求问题详解
2019/08/06 Python
idea2020手动安装python插件的实现方法
2020/07/17 Python
Python实现钉钉/企业微信自动打卡的示例代码
2021/02/02 Python
Html5饼图绘制实现统计图的方法
2020/08/05 HTML / CSS
意大利在线药房:shop-farmacia.it
2019/03/12 全球购物
汉语言文学毕业生求职信
2013/10/01 职场文书
大一新生军训时的自我评价分享
2013/12/05 职场文书
车间组长岗位职责
2013/12/20 职场文书
会计系中文个人求职信
2013/12/24 职场文书
鸟的天堂导游词
2015/01/31 职场文书
战友聚会致辞
2015/07/28 职场文书
高中团支书竞选稿
2015/11/21 职场文书