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 相关文章推荐
js几秒以后倒计时跳转示例
Dec 26 Javascript
浅析JQuery中的html(),text(),val()区别
Sep 01 Javascript
javascript中利用柯里化函数实现bind方法【推荐】
Apr 29 Javascript
JavaScript绑定事件监听函数的通用方法
May 14 Javascript
js改变style样式和css样式的简单实例
Jun 28 Javascript
node.js利用redis数据库缓存数据的方法
Mar 01 Javascript
JS操作时间 - UNIX时间戳的简单介绍(必看篇)
Aug 16 Javascript
JavaScript定义函数的三种实现方法
Sep 23 Javascript
js+html实现周岁年龄计算器
Jun 25 Javascript
pageGroup.js实现分页功能
Jul 27 Javascript
jQuery模仿ToDoList实现简单的待办事项列表
Dec 30 jQuery
webpack 动态批量加载文件的实现方法
Mar 19 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实现HTML生成PDF文件的方法
2014/11/07 PHP
PHP文件缓存smarty模板应用实例分析
2016/02/26 PHP
php单链表实现代码分享
2016/07/04 PHP
PHP实现数组的笛卡尔积运算示例
2017/12/15 PHP
基于swoole实现多人聊天室
2018/06/14 PHP
Thinkphp5.0框架视图view的模板布局用法分析
2019/10/12 PHP
JSON 教程 json入门学习笔记
2020/09/22 Javascript
this和执行上下文实现代码
2010/07/01 Javascript
单击浏览器右上角的X关闭窗口弹出提示的小例子
2013/06/12 Javascript
理运用命名空间让js不产生冲突避免全局变量的泛滥
2014/06/15 Javascript
jQuery插件PageSlide实现左右侧栏导航菜单
2015/04/12 Javascript
基于Layer+jQuery的自定义弹框
2020/05/26 Javascript
jQuery实现背景滑动菜单
2016/12/02 Javascript
10个最优秀的Node.js MVC框架
2017/08/24 Javascript
Vue不能观察到数组length的变化
2018/06/08 Javascript
微信小程序实现倒计时补零功能
2018/07/09 Javascript
Vue异步组件处理路由组件加载状态的解决方案
2018/09/07 Javascript
Django+vue跨域问题解决的详细步骤
2019/01/20 Javascript
详解Webpack4多页应用打包方案
2020/07/16 Javascript
Python中字符串格式化str.format的详细介绍
2017/02/17 Python
Python实现Youku视频批量下载功能
2017/03/14 Python
Python+matplotlib实现华丽的文本框演示代码
2018/01/22 Python
Python下载网络小说实例代码
2018/02/03 Python
python中kmeans聚类实现代码
2018/02/23 Python
Python针对给定字符串求解所有子序列是否为回文序列的方法
2018/04/21 Python
python简易实现任意位数的水仙花实例
2018/11/13 Python
pyqt5移动鼠标显示坐标的方法
2019/06/21 Python
PyQt 图解Qt Designer工具的使用方法
2019/08/06 Python
Python 列表的清空方式
2020/01/13 Python
美国体育用品商店:Rally House(NCAA、NFL、MLB、NBA、NHL和MLS)
2018/01/03 全球购物
医药代表个人求职信范本
2013/12/19 职场文书
三八红旗集体先进事迹材料
2014/05/22 职场文书
公司自我介绍演讲稿
2014/08/21 职场文书
团队拓展训练感想
2015/08/07 职场文书
go语言中GOPATH GOROOT的作用和设置方式
2021/05/05 Golang
简单谈谈Python面向对象的相关知识
2021/06/28 Python