Angularjs 如果页面在ionic 1中有超过1个div,如何使用ionic Refresh
我想使用离子刷新的html页面是有3个div元素。每个div元素将执行不同的函数,如allShow()、earnedShow()和ReceiveShow() 我正在使用popover组件过滤我的数据。例如,“全部”将包含所有数据,“赢得”将仅显示赢得的详细信息,“兑换”将仅显示兑换的详细信息。我已经在一个html中编写了所有视图。我想要的是,当我在“赢得”字段中时,如果我试图拉刷新页面,则意味着只应显示负责该div的函数,而不应转到“全部” 请建议一种使用方法Angularjs 如果页面在ionic 1中有超过1个div,如何使用ionic Refresh,angularjs,cordova,ionic-framework,Angularjs,Cordova,Ionic Framework,我想使用离子刷新的html页面是有3个div元素。每个div元素将执行不同的函数,如allShow()、earnedShow()和ReceiveShow() 我正在使用popover组件过滤我的数据。例如,“全部”将包含所有数据,“赢得”将仅显示赢得的详细信息,“兑换”将仅显示兑换的详细信息。我已经在一个html中编写了所有视图。我想要的是,当我在“赢得”字段中时,如果我试图拉刷新页面,则意味着只应显示负责该div的函数,而不应转到“全部” 请建议一种使用方法 $scope.allShow=f
$scope.allShow=function()
{
$scope.All=true;
$scope.owned=false;
$scope.received=false;
//某些功能
}
$scope.earnedShow=函数()
{
$scope.All=false;
$scope.owned=true;
$scope.received=false;
//某些功能
}
$scope.show=函数()
{
$scope.All=false;
$scope.owned=false;
$scope.reduced=true;
//某些功能
}
$scope.doRefresh=函数(){
console.log('刷新!');
$timeout(函数(){
//$scope.allShow();
$scope.allShow();
$scope.$broadcast('scroll.refreshComplete');
}, 500);
};代码>
全部的
赚得
补偿
您应该根据当前选择的分区进行刷新。有很多简单的解决方案,但对于您的逻辑:
$scope.doRefresh = function() {
console.log('Refreshing!');
$timeout( function() {
if ($scope.All === true) {
$scope.allShow();
}
if ($scope.Earned === true) {
$scope.earnedShow();
}
if ($scope.Redeemed === true) {
$scope. redeemShow();
}
$scope.$broadcast('scroll.refreshComplete');
}, 500);
可能是解决方案您在这里提出的问题一点也不清楚。对于您发布的代码,这些div
都将不可见,因为所有ng show
都指向不存在的$scope
属性。$scope.all=false;$scope.owned=false$范围。赎回=真实;这些是我为每个函数使用的范围变量,用于显示相应的函数。我现在正在获取内容。问题是我需要刷新的是,每个控制器,而不是每个函数,只有特定的作用域$scope
;现在还不清楚你想在这里做什么。