2016-07-07 56 views
0

使用离子拉刷新功能不会更新我的清单。函数被调用,并在控制台数据从服务中检索,但不刷新我的列表。拉动刷新离子不刷新我的清单

这里是我的看法:

 <ion-list> 
      <ion-item class="list card" ng-repeat="pickup in pickups"> 
       <div class="item"> 
        <h2>{{pickup.title}}</h2> 

        <p>Request Date : {{pickup.added_date}}</p> 

        <p>Status : 
         <span class="positive" ng-if="pickup.status==0">On Queue</span> 
         <span class="energized" ng-if="pickup.status==1">On Process</span> 
         <span class="balanced" ng-if="pickup.status==2">On Collected</span> 
         <span class="assertive" ng-if="pickup.status==2">Cancelled</span> 
        </p> 
       </div> 

       <div class="item item-body"> 
        <p>Contact : {{pickup.b_contact}}</p> 

        <p>Location : {{pickup.b_location}}</p> 

        <p> 
         <a class="button circular-btn icon ion-android-done button-energized" href="#" 
          ng-click="statusData(pickup.pickupid,pickup.user_id,1)" 
          ng-if="pickup.status==0"></a> 
         <a class="button circular-btn ion-android-done-all button-balanced" href="#" 
          ng-click="statusData(pickup.pickupid,pickup.user_id,2)" 
          ng-if="pickup.status==0|| pickup.status==1"></a> 
         <a class="button circular-btn icon ion-close-circled button-assertive" href="#" 
          ng-click="statusData(pickup.pickupid,pickup.user_id,3)" 
          ng-if="pickup.status==0|| pickup.status==1|| pickup.status==2"></a> 
        </p> 
       </div> 

      </ion-item> 
     </ion-list> 
    </ion-content> 

我控制器代码:

.controller('AppCtrl', function ($scope, Service, $ionicLoading, $ionicModal, $ionicPopup, $timeout, $state, $http, $stateParams) { 

$scope.doRefresh = function() { 
    Service.getpickup($state, $http).success(function (data) { 
     $scope.pickups = data.pickup_request; 
     console.log(data.pickup_request); 
    }) 
     .finally(function() { 
      $scope.$broadcast('scroll.refreshComplete'); 
     }); 
} 
    }); 

请指引我。提前致谢。

+0

' '你添加了这个吗? –

+0

是的,我确实对不起,我忘了放在视图上面 –

回答

0
  • 你在你的html中使用了ion-refresher标签吗?我不能在你的代码中看到它。如果没有,用这个

    <ion-refresher pulling-text="Pull to refresh..." on-refresh="doRefresh()"> 
    
  • 另外,尽量手动添加项目到列表这样,看看是否可行。 (检查data.pickup_request是一个数组为好)

    $scope.pickups.push.apply($scope.pickups, data.pickup_request); 
    
+0

我已经安慰console.log($ scope.pickups);我得到了更新的数据,但视图不更新 –

+0

你可以尝试push.apply? – Srijith

+0

我已经使用了$ scope.pickups.push.apply($ scope.pickups,data.pickup_request);作为你的建议,但没有运气,尽管$ scope.pickups已更新值,但不显示在视图中 –

0

我已经发现这些问题。我在pickCtrl中查看视图,但我在另一个控件中调用范围函数。谢谢你们每个人的指导。谢谢你。