Это старый вопрос, кажется, у нас что-то происходит с куриным яйцом, если мы хотим полагаться на основные возможности библиотеки.
Вместо того, чтобы решить проблему фундаментальным образом, я обошел стороной. Создайте директиву, охватывающую все тело. Ex.
<body ng-app="app">
<div mc-body>
Hello World
</div>
</body>
Теперь mc-body
необходимо инициализировать перед рендерингом (один раз), например.
link: function(scope, element, attrs) {
Auth.login().then() ...
}
Auth
является услугой или поставщиком, напр.
.provider('Auth', function() {
... keep your auth configurations
return {
$get: function($http) {
return {
login: function() {
... do something about the http
}
}
}
}
})
Мне кажется, что у меня есть контроль над порядком начальной загрузки, это происходит после того, как обычная начальная загрузка разрешает всю конфигурацию поставщика, а затем пытается инициализировать mc-body
директиву.
И эта директива, как мне кажется, может опережать маршрутизацию, потому что маршрутизация также вводится через директиву ex. <ui-route />
. Но я могу ошибаться в этом. Требуется дополнительное расследование.