儘管事實上我是Angular的初學者,但我不知道如何最好地解決這個問題。 想象一下,我有兩個用戶,他們互相欠錢,用戶:'A'和'B'。在AngularJS同時顯示內容
'A'有5筆交易,必須支付5000美元給'B'。 'B'有50000筆交易,必須支付100000美元給'A'。在這一刻我看到2交易,而不是1,我必須做數學的頭。代碼如下所示:
$scope.charges = {};
totalChargeUserToFactory.query({
id: null
}).$promise.then(function (data) {
$scope.charges.to = data;
});
totalChargeUserFromFactory.query({
id: null
}).$promise.then(function (data) {
$scope.charges.from = data;
});
所以我決定改就解決我的問題:
$scope.charges = {};
totalChargeUserToFactory.query({
id: null
}).$promise.then(function (data) {
$scope.charges.to = data;
totalChargeUserFromFactory.query({
id: null
}).$promise.then(function (data) {
$scope.charges.from = data;
for (var i = 0; i < $scope.charges.to.length; i++) {
for (var j = 0; j < $scope.charges.from.length; j++) {
if ($scope.charges.to[i].userFromId === $scope.charges.from[j].userToId) {
if ($scope.charges.to[i].charge < $scope.charges.from[j].charge) {
$scope.charges.from[j].charge = (parseFloat($scope.charges.from[j].charge)
- parseFloat($scope.charges.to[i].charge)).toFixed(2);
$scope.charges.to.splice(i, 1);
i--;
} else {
$scope.charges.to[i].charge = (parseFloat($scope.charges.to[i].charge)
- parseFloat($scope.charges.from[j].charge)).toFixed(2);
$scope.charges.from.splice(j, 1);
j--;
}
}
}
}
});
});
而現在真正的問題occures。有了這麼多的交易,需要時間才能加載內容。當剛剛加載A時,B加載2秒鐘,然後出現在屏幕上。它看起來不太好...你能給我一些提示如何避免這種情況嗎?基於這個代碼?我將不勝感激。
我一直在尋找谷歌找到解決方案,但我找不到任何satysfying,這直接影響我的問題。