Ich habe einen Ladebildschirm zu zeigen, wenn ich Daten auf dem Server speichern, aber es wird nicht aktualisiert, bis ich meine $http
Anfrage fertig bin. Kann jemand erklären warum?Winkelbereich, Controller nesting
Controller:
app.controller('controller1',controller1);
controller1.$inject=['$scope', '$http', 'myService', 'basketService'];
function controller1($scope, $http, myService, basketService) {
//code
};
app.controller('controller2',controller2);
controller2.$inject=['$scope', '$http', 'myService', 'basketService'];
function controller2($scope, $http, myService, basketService) {
$scope.doSomething = function(){
$scope.iWantToUpdateThis = true;
};
};
HTML:
<body ng-controller="controller1">
<div ng-cloak ng-show="iWantToUpdateThis">
</div>
//code
<button ng-controller="controller2" ng-click="doSomething()">
clickMe
</button>
<body>
ich $scope.$apply()
mit ausprobiert habe, aber er sagt, dass ein verdauen Schleife bereits bei der Ausführung ist.
$ scope. $ Apply() nicht scope.apply() – MMK
versuche mit $ timeout (function() {$ scope.iWantToUpdateThis = true}); – MMK
Haben Sie darüber nachgedacht, $ rootScope zu verwenden, um das Feld zu speichern? –