2017-01-18 5 views
2

Mit UIRouter in einer Angular 1.5-App habe ich Probleme, einen Ausgangszustand für mein Winkelmodul festzulegen.Angular-UI-Router-Ausgangszustand ohne URL

Ich habe ein paar Staaten ohne URLs erstellt (weil ich kein tatsächliches Routing benötige) und ich möchte einen Anfangszustand aktivieren, sobald das Modul instanziiert ist.

Normalerweise würde ich dies mit $urlRouterProvider.otherwise(<initialRoute>) tun, aber da ich URLs in meinen Staaten nicht verwenden, kann das nicht funktionieren.

Bietet UIRouter (oder Angular) eine Lösung dafür?

+0

Entschuldigung, aber wenn Sie keine Route haben ... warum willst du eine festlegen? .. haben Sie bereits $ urlRouterProvider.otherwise ('/') ausprobiert und in Ihrem Index gesetzt? –

+0

Nein Ich habe keine Route, juste Staaten ohne URLs. Es ist eigentlich eine Funktion von UIRouter, Sie können einen solchen Zustand auf die gleiche Weise aktivieren wie für einen gerouteten Zustand (zB mit 'ui-sref' oder' $ state.go() '). Ähnlich einer gerouteten Anwendung, in der Sie normalerweise eine Standard-URL definieren (wie zum Beispiel/home), hätte ich gerne einen Standardstatus (der nicht URL-basiert ist). Ist das klarer? – ClementParis016

+0

aber ui-sref und $ state.go werden verwendet, um zu einer URL zu navigieren .. aber ok –

Antwort

3

Nachdem Ihre Anwendung bootstrappt wurde, können Sie Ihren Ausgangszustand innerhalb der .run() Methode festlegen.

angular.module("myModuleName") 
    .run([ 
     "$state", 
     function($state){ 
      $state.go('stateName'); 
     } 
    ]); 
+0

Danke, es funktioniert gut! In der Tat macht es vollkommen Sinn und das ist eine saubere Lösung :) – ClementParis016