Prawdopodobnie nie da się zachować żadnej zmiennej javascript poprzez przeładowanie strony, a $ rootScope jest po prostu zmienną javascript.
Wydaje się jednak, że to, czego szukasz, jest sposobem na to, aby Twoja aplikacja "zaczynała się od tego samego punktu", w którym była po przeładowaniu strony. Polecam zapoznanie się z pojęciem stanu. Każda aplikacja może być postrzegana jako zbiór stanów i przejść między nimi. Każda interakcja użytkownika lub jakiekolwiek inne działanie w aplikacji zmienia stan aplikacji lub utrzymuje ją w tym samym stanie. Na przykład: kliknięcie linku użytkownika z listy użytkowników zmienia stan z "wyświetl listę użytkowników" na "wyświetl szczegóły użytkownika dla użytkownika o identyfikatorze = 213", klikając przycisk "Edytuj" w "zobacz szczegóły użytkownika dla użytkownika o identyfikatorze = 213 "zmienia stan na" edytuj użytkownika o id = 213 ". A gdy zachodzą te przejścia, zmienne są przypisywane wartościom, zmianie widoków, wysyłanym żądaniom itd.
Dwie rzeczy, które są potrzebne do rozwiązania problemu "zacznij od tego samego punktu" to menedżer stanu i sposób serializowania i przechowywania stany.
Jako menedżer stanu oprócz podstawowej dyrektywy $ router można użyć ui-router. Jeśli chodzi o sposób serializowania i przechowywania stanu za pomocą ui-router robi to poprzez adres URL. Zaletą routera ui jest to, że pozwala on na zagnieżdżanie stanów i jest ogólnie bardziej elastyczny.
ui-router posiada również rozwiązania dla Twojego drugiego pytania w swoim github wiki https://github.com/angular-ui/ui-router/wiki/Frequently-Asked-Questions#how-to-open-a-dialogmodal-at-a-certain-state
Nie rozumiem twojego drugiego pytania. – John
co próbuję powiedzieć, to, że odświeża aplikację, a zatem wszystkie moduły zostają zresetowane, czy istnieje usługa, która zachowuje i nie jest niszczona? lub czy istnieje sposób na niezniszczalność aplikacji przez odświeżenie. – user2167582
Jedyne sposoby, jakie mogę wymyślić to użycie localStorage lub zapisanie tych danych na serwerze, który ściąga podczas odwiedzania aplikacji. O ile mi wiadomo, nie ma na to sposobu Angular. – John