Ich benutze $ http.get, um Auth und Benutzerdetails zu erhalten, so dass ich Benutzernamen statt der Login-Schaltfläche anzeigen kann.
.directive("plunkerUserPane", ["collectionsManager", function(collectionsManager) {
var getAuth = function($http) {
$http.get('/user/auth').success(function(response) {
if (response.isAuth) {
return 'user.html';
} else {
return 'userPane.html';
}
});
};
return {
restrict: "E",
replace: true,
template: '<div ng-include src="userPane.getTemplate()"></div>',
controllerAs: "userPane",
controller: ["$scope", "$http", "login", "visitor", function($scope, $http, login, visitor) {
this.visitor = visitor;
this.getTemplate = function() {
var template = 'userPane.html';
template = getAuth($http);
return '/components/userPane/' + template;
}
this.showLoginWindow = function() {
login.open();
};
}]
};
}])
Wann immer die Daten von der GET-Anforderung empfangen wird es wieder durch die Standardbeobachter und die Starts und Endlosschleife aufgerufen wird. Wie man sie oder irgendeinen anderen Weg deaktiviert, um dieses Problem zu lösen.
Es ist fast perfekt, aber es wirft diesen Fehler 'GET http: // localhost: 8080/userPane.html 404 (nicht gefunden)' –