2016-10-25 3 views
0

Ich habe einen Controller und eine Ansicht. Ansicht enthält drei Dropdown-Menüs und Tabelle. Alle Dropdown-Felder sind dynamisch, sobald das Dropdown-Menü auf der Grundlage des ausgewählten Werts ausgewählt wird. REST-Aufruf wird vorgenommen, um dropdown2-Werte abzurufen. Der Controller enthält Aufrufe zum Abrufen der erforderlichen Details.Routing mit eckigen ui Router - Bookmark Feature

Sobald alle Drop-Downs ausgewählt wurden. Beim Klicken auf die Suche würde die Tabelle mit den Werten gefüllt werden. URL sollte geändert werden und Tabelle sollte mit den Werten gefüllt werden.

Wenn Benutzer-URLs verwendet werden und das nächste Mal die URL geöffnet wird, sollten alle Dropdown-Felder und Tabellen automatisch ausgefüllt werden.

URL - http://localhost:8080/sample/#/home?dropdown1=abc&dropdown2=xyz&dropdown2=value

Ich bin nicht Idee bekommen, wie dies zu erreichen, ist es trotzdem, dies mit Winkel UI-Router zu erreichen auf bestimmte Bedingung basiert?

Antwort

0

hinzufügen Parameter Ihren Zustand

$stateProvider 
    .state('app.home', { 
     url: '/home?dropdown1&dropdown2&dropdown3' 
     // ... 
    }); 

und für Initing Modell, in Controller-Check $stateParams, wie:

$scope.dropdown1 = $stateParams.dropdown1 || null; 
$scope.dropdown2 = $stateParams.dropdown2 || null; 
$scope.dropdown3 = $stateParams.dropdown3 || null; 
+0

Dank. Ich habe einen Zweifel. Wie bereits erwähnt, werden Werte dynamisch aufgefüllt. Der REST-Aufruf zum Abrufen der Werte für Dropdown2 basiert auf dem Wert, der in Dropdown1 usw. ausgewählt wurde. Wenn dies geschieht, werden die REST-Aufrufe ausgeführt und die Anwendung verhält sich wie gewohnt, wenn der Benutzer die URL auf einer anderen Registerkarte kopiert? – Nagendra

+0

Versuchen Sie, die Listen basierend auf dem Wert einer lokalen Variablen zu füllen. Es gibt keinen Unterschied, Sie können einen Wert manuell oder von einer lokalen Variable wählen. –

Verwandte Themen