我正在创建一个Ionic移动应用程序。
当我的函数无法加载http.get请求时,我正在尝试显示警告弹出框。
最初警告弹出框弹出3次。所以我添加了一个名为popupShow = false
的变量,并将警报框放在if(!popupShow)
语句中,并在警报框被执行后调用popupShow = true
。现在警报框弹出两次。我不确定为什么会这样做。
$scope.doRefresh = function() {
$http.get('')
.success(function(data) {
$scope.data = data;
window.localStorage.setItem("data", JSON.stringify(data));
})
.error(function() {
if(!popupShow){
$ionicPopup.alert({
title: 'Internet Connectivity',
template: 'Some features will be limited'
})
popupShow = true;
}
$ionicLoading.hide()
if(window.localStorage.getItem("data") !== undefined) {
$scope.data = JSON.parse(window.localStorage.getItem("data"));
}
})
.then(function() {
$ionicLoading.hide()
});
}
$scope.doRefresh();
$scope.loadMore = function() {
$scope.infiniteLimit += 1;
$scope.$broadcast('scroll.infiniteScrollComplete');
}, 1000;
$scope.moreDataCanBeLoaded = function() {
return $scope.data.length > $scope.infiniteLimit;
}
})