Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 如果页面在ionic 1中有超过1个div,如何使用ionic Refresh_Angularjs_Cordova_Ionic Framework - Fatal编程技术网

Angularjs 如果页面在ionic 1中有超过1个div,如何使用ionic Refresh

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

我想使用离子刷新的html页面是有3个div元素。每个div元素将执行不同的函数,如allShow()、earnedShow()和ReceiveShow()

我正在使用popover组件过滤我的数据。例如,“全部”将包含所有数据,“赢得”将仅显示赢得的详细信息,“兑换”将仅显示兑换的详细信息。我已经在一个html中编写了所有视图。我想要的是,当我在“赢得”字段中时,如果我试图拉刷新页面,则意味着只应显示负责该div的函数,而不应转到“全部”

请建议一种使用方法

$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
;现在还不清楚你想在这里做什么。