Це старе питання, здається, у нас щось відбувається з курячими яйцями, якщо ми хочемо покластись на основні можливості бібліотеки.
Замість того, щоб вирішити проблему принципово, я зробив це обхід. Створіть директиву, яка охоплює все тіло. Напр.
<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 />
. Але я можу помилитися в цьому. Потрібне ще якесь розслідування.