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 相关文章推荐
php上传图片并给图片打上透明水印的代码
Jun 07 Javascript
js 加密压缩出现bug解决方案
Nov 25 Javascript
JS中取二维数组中最大值的方法汇总
Apr 17 Javascript
jQuery绑定事件的几种实现方式
May 09 Javascript
详解如何将angular-ui的图片轮播组件封装成一个指令
May 09 Javascript
给vue项目添加ESLint的详细步骤
Sep 29 Javascript
jQuery实现表单动态添加数据并提交的方法
Jul 19 jQuery
axios封装,使用拦截器统一处理接口,超详细的教程(推荐)
May 02 Javascript
js实现文字头像的生成代码
Mar 07 Javascript
antd多选下拉框一行展示的实现方式
Oct 31 Javascript
原生js实现放大镜组件
Jan 22 Javascript
TypeScript实用技巧 Nominal Typing名义类型详解
Sep 23 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
绿山咖啡和蓝山咖啡
2021/03/04 新手入门
PHP投票系统防刷票判断流程分析
2012/02/04 PHP
php curl 伪造IP来源的实例代码
2012/11/01 PHP
Yii框架扩展CGridView增加导出CSV功能的方法
2017/05/24 PHP
javascript String 的扩展方法集合
2008/06/01 Javascript
html中的input标签的checked属性jquery判断代码
2012/09/19 Javascript
jquery parent和parents的区别分析
2013/10/02 Javascript
浅析offsetLeft,Left,clientLeft之间的区别
2013/11/30 Javascript
8个超实用的jQuery功能代码分享
2015/01/08 Javascript
深入分析Cookie的安全性问题
2015/03/01 Javascript
AngularJS基础 ng-keypress 指令简单示例
2016/08/02 Javascript
D3.js实现饼状图的方法详解
2016/09/21 Javascript
Angular.js跨controller实现参数传递的两种方法
2017/02/20 Javascript
详解webpack 多页面/入口支持&amp;公共组件单独打包
2017/06/29 Javascript
ES6解构赋值实例详解
2017/10/31 Javascript
Mac下安装vue
2018/04/11 Javascript
微信小程序实现slideUp、slideDown滑动效果及点击空白隐藏功能示例
2018/12/11 Javascript
js验证身份证号码记录的方法
2019/04/26 Javascript
vue中进行微博分享的实例讲解
2019/10/14 Javascript
基于Vue el-autocomplete 实现类似百度搜索框功能
2019/10/25 Javascript
基于vue-draggable 实现三级拖动排序效果
2020/01/10 Javascript
详解vue3.0 的 Composition API 的一种使用方法
2020/10/26 Javascript
[02:19]DOTA2女子战队FOX视频专访:希望更多美眉一起加入
2013/10/15 DOTA
将Django框架和遗留的Web应用集成的方法
2015/07/24 Python
浅谈python中列表、字符串、字典的常用操作
2017/09/19 Python
python绘制简单折线图代码示例
2017/12/19 Python
python3判断url链接是否为404的方法
2018/08/10 Python
Python正则表达式指南 推荐
2018/10/09 Python
pycharm修改file type方式
2019/11/19 Python
wxPython绘图模块wxPyPlot实现数据可视化
2019/11/19 Python
python使用pyecharts库画地图数据可视化的实现
2020/03/25 Python
利用Python优雅的登录校园网
2020/10/21 Python
将世界上最美丽的摄影作品转化为艺术作品:Photos.com
2017/11/28 全球购物
小学生安全演讲稿
2014/04/25 职场文书
班级年度安全计划书
2014/05/01 职场文书
Python 多线程之threading 模块的使用
2021/04/14 Python