У меня есть диалог «добавить друга», когда вы добавляете пользователя, он возвращается в историю состояний и должен обновлять список друзей. Все работает отлично, за исключением того, что список не показывает новый пользователя - хотя оба console.log
s показывают правильные данные:
[e, e, e, $promise: Promise, $resolved: true]
(3 e
корректно, у меня было два раньше).
$scope.add = function (user, goback) {
if (goback)
$ionicHistory.goBack();
$ionicLoading.show();
ApiService.friends.request(user._id, function (data, status, headers, cfg) {
$scope.users = ApiService.users.friends(function (res, headers) {
$ionicLoading.hide();
console.log($scope.users);
});
console.log($scope.users);
});
}
Я попытался обертывание $scope.users =
вещи в $scope.$apply
или позвонив по телефону, что в разных местах, но только (по праву) поднимает $digest already in progress
ошибки (потому что automaticall $ ресурса делает это).
Что происходит, и как я могу это исправить?
wtf Продолжается? Я просто попытался просто сделать это:
$scope.add = function (user, goback) {
$scope.users = [];
}
(и даже упаковка $scope.users = []
в $ применяется), но ничего не происходит! Но $ scope.add вызывается из ng-click
директивы - это должно работать!
Обнаружили ошибку!
Мой друг, где add
получил вызов, конечно, имел свой собственный объем. Это довольно грязно, но в итоге я использовал $scope.$parent.users
вместо $scope.users
для хранения данных.
'users.friends' - это запрос $ resource (' method: GET, isArray: true'). – sol
, и это все еще ничего не делает ... любой отладочный вывод консоли после назначения все еще печатает список из трех элементов. – sol