Tengo un problema en el que estoy inicializando una variable en el alcance en un controlador. Luego, se cambia en otro controlador cuando un usuario inicia sesión. Esta variable se usa para controlar cosas como la barra de navegación y restringe el acceso a partes del sitio dependiendo del tipo de usuario, por lo que es importante que mantenga su valor. El problema con esto es que el controlador que lo inicializa, vuelve a ser llamado por angular de alguna manera y luego restablece la variable a su valor inicial.
Supongo que esta no es la forma correcta de declarar e inicializar variables globales, bueno, no es realmente global, así que mi pregunta es cuál es la forma correcta y ¿hay algún buen ejemplo en torno a eso que funcione con la versión actual de angular?