у меня есть родительский контроллер с двумя впрыскиваются контроллеры ребенка следующим образом:Очистить данные на выходе из системы с инжектированными контроллерами (угловой)
.controller('parentCtrl', ['$scope', '$http', '$controller', '$uibModal',
function ($scope, $http, $controller, $uibModal) {
$controller('firstChildCtrl', { $scope: $scope })
$controller('secondChildCtrl', { $scope: $scope })
}])
Когда пользователь выходит из системы, контроллер Логина выдает событие выхода из системы:
$scope.$emit('logout');
Все мои другие контроллеры очистить свои данные о получении этого события следующим образом:
$scope.initial = [];
$rootScope.$on("logout", function (event) {
$scope.activities = angular.copy($scope.initial);
});
Итак, мой вопрос: как я могу заставить родительский контроллер очищать данные в своих дочерних областях (потому что это не так)?
Заранее благодарен!
Я бы предложил использовать эту услугу (или услуги) для этой информации, а не передавать ее по областям. Затем при выходе из системы, вместо того, чтобы испускать событие, вы можете напрямую очистить данные от служб (ов) –
. Спасибо. У меня есть некоторые услуги для получения данных с сервера. Я не уверен, как очистить данные от них. Я предполагаю, что было бы целесообразно вводить службы в контроллер вместо контроллеров. –
Теперь я переписал свой контроллер, чтобы использовать все службы вместо инъекционных контроллеров. Теперь мне просто нужно выяснить, как очистить данные от службы. Если вы хотите повернуть свой комментарий в ответ, я с радостью буду отмечать его как принятый ответ. –