/ / Bootstrap Aplikácia AngularJS s údajmi zo servera - javascript, angularjs

Aplikácia Bootstrap AngularJS s údajmi zo servera - javascript, angularjs

Mám aplikáciu AngularJS a ja som "d chceli načítať$ scope alebo $ rootScope s údajmi špecifickými pre aplikáciu predtým, ako sa vykoná ktorýkoľvek z kódov kontroléra. To by zahŕňalo napríklad úlohy, povolenia, lokalizácie atď.

Jediná životaschopná možnosť, ktorú som našiel, je pridať objekt rozlíšenia do KAŽDÉHO z mojich trás / regulátorov, to považujem za nočnú moru údržby.

Tiež som čítal o aplikácii.run (), ale neexistuje spôsob, ako dostať závislosti od služby. To znamená, že môžete volať službu na váš server v prevádzke, ale nebude to čakať na sľub dokončiť skôr, ako budete pokračovať.

Mám pocit, že je to do očí bijúci problém s AngularJS.

Dúfajme, že mi chýba niečo zrejmé z API.

Tu je veľmi podobná otázka, ktorá bola uverejnená počas leta, hoci žiadne skutočné riešenie nebolo zaslané. AngularJS načítanie dát pri spustení aplikácie

odpovede:

1 pre odpoveď č. 1

normálne resolve je dobrý spôsob, ako to urobiť, ak chcete urobiť niečo s Angular najprv, potom pauza, potom robiť iné veci s uhlom.

Ale ak chcete urobiť niečo bez Angular najprv, potom spustiť Angular, môžete ručne spustiť Angular.js s angular.bootstrap, Aby ste mohli načítať dáta ako prvé, potom, keď sa cítite pripravení. volanie angular.bootstrap() na spustenie uhlového modulu.

Čo musíte pripraviť:

  1. odstrániť ng-app="XXX" z vášho dokumentu.
  2. volanie angular.bootstrap() potom, čo je všetko pripravené.

Doc pre angular.bootstrap ()


-1 pre odpoveď č. 2
angular.module("myApp").controller("MYContoller", function ($scope)
{
$scope.init = function()
{
...
};
$scope.init();

}

To by malo fungovať, môžete tiež použiť ng-init, bit si myslí, že dokument uvádza, že by ste nemali "t