ionic数据交互
2017-10-14 21:38
141 查看
<script>
angular.module('ionicApp', ['ionic'])
//如果直接从后台获取数据
.controller("kController", ["$scope",
"$http", "$timeout",
function($scope, $http, $timeout) {
$scope.data
= [];
$scope.moredata
= true;
$scope.getData =
function() { //在下拉刷新时会自动调用
console.log("getData");
$scope.moredata
= true;
//激活下拉加载事件
getNum
= 0; //充值测试累加变量,这里是方便测试
$http.get("data/data1.json").then(function(res)
{
console.log("res:",res);
$scope.data
= []; //重置data数组中的数据否则会无限累加
var
data = res.data.qiye.supports;
angular.forEach(data,
function(d) {
$scope.data.push(d);
});
// console.log("getData:",$scope.data);
},
function(err) {
console.log(err);
}).finally(function() {
//不管获取数据成功与否都会执行的代码(一般用于一些成功或失败都要做的动作)
//通知下拉完成事件
$scope.$broadcast("scroll.refreshComplete");
});
};
$scope.getData();
var getNum
= 0;
$scope.loadMore =
function() {
console.log('loadMore',
getNum, $scope.moredata);
//当$scope.mordata为false不会执行加载更多,可在下拉刷新的时候重新激活为true
//可以设置分页,当数据加载完毕,如:初次加载数据只有10条,分页条数为20,设置$scope.moredata为false不会显示加载更多,多页同理
//这里设置一个累加变量达到一定值之后不再继续加载
if(getNum<10){
$scope.moredata=true;
4000
console.log("第"+getNum+"次");
}
if (getNum
>= 10) {
//10次之后取消上拉加载事件
$scope.moredata
= false;
console.log('上拉加载事件禁用')
return;
}
$http.get('data/data1.json').success(function(data)
{
$scope.data
= $scope.data.concat(data.qiye.supports);
console.log(data);
/*var timer = */$timeout(function() {
// 停止广播上拉加载请求
$scope.$broadcast('scroll.infiniteScrollComplete');
},2000);
getNum++;
});
};
$scope.$on('stateChangeSuccess',
function() {
$scope.loadMore();
});
}])
</script>
angular.module('ionicApp', ['ionic'])
//如果直接从后台获取数据
.controller("kController", ["$scope",
"$http", "$timeout",
function($scope, $http, $timeout) {
$scope.data
= [];
$scope.moredata
= true;
$scope.getData =
function() { //在下拉刷新时会自动调用
console.log("getData");
$scope.moredata
= true;
//激活下拉加载事件
getNum
= 0; //充值测试累加变量,这里是方便测试
$http.get("data/data1.json").then(function(res)
{
console.log("res:",res);
$scope.data
= []; //重置data数组中的数据否则会无限累加
var
data = res.data.qiye.supports;
angular.forEach(data,
function(d) {
$scope.data.push(d);
});
// console.log("getData:",$scope.data);
},
function(err) {
console.log(err);
}).finally(function() {
//不管获取数据成功与否都会执行的代码(一般用于一些成功或失败都要做的动作)
//通知下拉完成事件
$scope.$broadcast("scroll.refreshComplete");
});
};
$scope.getData();
var getNum
= 0;
$scope.loadMore =
function() {
console.log('loadMore',
getNum, $scope.moredata);
//当$scope.mordata为false不会执行加载更多,可在下拉刷新的时候重新激活为true
//可以设置分页,当数据加载完毕,如:初次加载数据只有10条,分页条数为20,设置$scope.moredata为false不会显示加载更多,多页同理
//这里设置一个累加变量达到一定值之后不再继续加载
if(getNum<10){
$scope.moredata=true;
4000
console.log("第"+getNum+"次");
}
if (getNum
>= 10) {
//10次之后取消上拉加载事件
$scope.moredata
= false;
console.log('上拉加载事件禁用')
return;
}
$http.get('data/data1.json').success(function(data)
{
$scope.data
= $scope.data.concat(data.qiye.supports);
console.log(data);
/*var timer = */$timeout(function() {
// 停止广播上拉加载请求
$scope.$broadcast('scroll.infiniteScrollComplete');
},2000);
getNum++;
});
};
$scope.$on('stateChangeSuccess',
function() {
$scope.loadMore();
});
}])
</script>
相关文章推荐
- Ionic从零单排(五)——Ionic程序与Java后台进行数据交互
- ionic 和Java服务器数据交互
- Ionic从零单排(三)——Ionic程序(前台)与服务器(后台)进行数据交互
- Spring MVC 使用ajax异步交互返回数据
- 关于如何用jquery的ajax来实现数据的交互
- 解决android studio和tomcat之间数据交互乱码问题
- 【图解】前后台数据交互,方便纯前端程序员了解后台服务器处理
- 微信小程序返回上级页面时单个数据交互
- ExtjsGrid 分页、ASP.net前后台数据交互
- Android与服务器端数据交互(1)(http协议整合struts2+android)
- JSP数据交互(一)
- jsp数据交互(一)
- 前端与后端的数据交互(jquery ajax+python flask)
- Flex数据交互之Remoting[转]
- Extjs和Asp.NET后台的数据交互(二) => Ext.data.Connection
- JQuery九种与后台交互数据的方法(ajax)
- 解决Android与服务器交互大容量数据问题
- [IOS经验总结]UIWebView与JS之间的数据交互
- json格式数据在前台与后台之间交互实例
- JSON数据与后台跨域交互时候网络请求的发送方式