AngularJS - Poignée de fragments répétés comme en-Tête et Pied de page

J'ai essayé de mettre en œuvre l'en-tête /pied de page dans un Angular JS App. Je pensais à de l'ajout de ces ng-à inclure dans les principaux index.html. Cependant, cela aurait fonctionné si l'en-tête et pied de page sont des pages statiques. Mon cas est un peu différent... Dans la page de Login sans en-tête /pied de page est indiqué. Autres pages en fonction de si vous êtes connecté ou non, vous devez afficher "Bienvenue utilisateur [ déconnexion]" ou "Bienvenue invité sur [ connexion ]".

Je enregistrer les informations de connexion dans la rootScope ainsi que de définir une valeur de type boolean $rootScope.isLoggedIn sur connexion. Le plus gros problème semble être que l'ensemble de la ng-inclure n'est pas actualisé sur une fermeture de session. Donc divs avec ng-afficher, de masquer les directives ne seront pas masquer/afficher sur le changement. Quelqu'un a suggéré d'utiliser ng-commutateur - il également se comporte de la même manière.

Si je déplace le code d'en-tête à l'intérieur de différents points de vue, alors tout est bien.

Une question similaire est ici: Actualisation de la page d'en-tête dans angularjs

Cela dépend de quelles expressions sont utilisées pour modifier\masquer les divs, êtes-vous en regardant sur certaines propriétés etc. Fournir certains modèle de code pour l'en-tête et de leur expression de liaison.
Pourriez-vous utiliser ng-controller directive à donner les en-têtes/pieds de page d'un contrôleur d'accès à votre $rootScope et ajouter un peu de masquer/afficher la logique?
BTW, mettre des trucs sur $rootScope est équivalent à globals dans la "plaine" de javascript et pas une très bonne pratique, je vous recommande d'utiliser un service de stockage de vos "isLoggedIn".
thx. J'ai commencé l'application et j'ai déjà un LoginService... je devrais le renommer en UserService et devrait l'avoir.

OriginalL'auteur Hari Gangadharan | 2013-10-10