0
我有一個基本的離子應用程序列出了頁面上的作業,當點擊一個作業時,這會調用我的REST API並返回該作業中的人員。Ionic HTTP請求延遲更新
我的問題是,當作業被點擊時,頁面加載時沒有數據,然後如果我拉來刷新頁面顯示結果?
當頁面顯示時,我拉動刷新後,人們的結果應該已經不存在了嗎?
有誰知道爲什麼我的結果不顯示在網頁加載?
我的工作列表
Job 1 <a href="#/job/1">Begin</a>
Job 2 <a href="#/job/2">Begin</a>
Job 3 <a href="#/job/3">Begin</a>
當點擊一個作業本加載我的狀態&控制器
國家
.state('job', {
url: '/job/:jobID',
templateUrl: 'templates/job.html',
controller: 'jobCtrl'
})
控制器
.controller('jobCtrl', function($scope, $stateParams, $http, $state) {
$scope.jobId = $stateParams.jobID;
$scope.data = {};
$http.get('https://domain/api/job?token=' + localStorage.getItem("token") + '&job_id=' + $scope.jobId).then(function(successResponse){
$scope.return = successResponse;
$scope.data = $scope.return.data.data;
}, function(errorRepsonse){
$scope.error = errorRepsonse;
});
$scope.doRefresh = function() {
$http.get('https://domain/api/job?token=' + localStorage.getItem("token") + '&job_id=' + $scope.jobId).then(function(successResponse){
$scope.return = successResponse;
$scope.data = $scope.return.data.data;
$scope.$broadcast('scroll.refreshComplete');
}, function(errorRepsonse){
$scope.error = errorRepsonse;
});
};
})
顯示人物結果的視圖。
<ion-refresher
pulling-text="Pull to refresh..."
on-refresh="doRefresh()">
</ion-refresher>
<ion-nav-back-button class="button-clear">
<i class="ion-arrow-left-c"></i> Back
</ion-nav-back-button>
<ion-list>
<ion-item class="item-remove-animate item-icon-right" ng-repeat="person in data" type="item-text-wrap">
<h2>{{person.name }}</h2>
</ion-item>
</ion-list>
感謝您的回覆@galchen - 如何從解決方案中返回工作數據?我不能使用$ scope,因爲它沒有定義? –
你不需要一個範圍。範圍用於將數據連接到模板。你只需'返回'它:'return resp.data.data;' – galchen
所以我會「返回successResponse」? –