1. Не совсем понял вопрос про права доступа к контроллерам. На каждый http-запрос в $httpProvider у нас написан interceptor (можно прочитать здесь), который отслеживает 401 ошибку и если она возникает, то разлогинивает пользователя (принудительно чистит куки и редиректит на страницу авторизации)
Про success(user) — описка :)
2. Предзагрузка данных делается следующим образом: в самом верху index.html находится <div ng-controller="InitCtrl"></div>. Этот контроллер отвечает только за загрузку данных. В $rootScope есть объект, показывающий, какие данные загружены (хранить это в $rootScope не очень красиво, но пока что так):
В этом контроллере, при его инициализации, одновременно запускаются функции загрузки данных и в success у каждой из них выставляется флаг в $rootScope.loaded. Например:
Благодаря тому, что интерфейс у нас основан на раздельных виджетах, мы можем показывать и скрывать разные виджеты в зависимости от стадии загрузки данных.
Про success(user) — описка :)
2. Предзагрузка данных делается следующим образом: в самом верху
index.html
находится<div ng-controller="InitCtrl"></div>
. Этот контроллер отвечает только за загрузку данных. В$rootScope
есть объект, показывающий, какие данные загружены (хранить это в$rootScope
не очень красиво, но пока что так):В этом контроллере, при его инициализации, одновременно запускаются функции загрузки данных и в success у каждой из них выставляется флаг в $rootScope.loaded. Например:
Благодаря тому, что интерфейс у нас основан на раздельных виджетах, мы можем показывать и скрывать разные виджеты в зависимости от стадии загрузки данных.