Ich benutze angular UI Router und nicht HTML5-Modus verwenden. Unten ist die Router-Konfiguration. Ich verwende verschachtelte Ansichten für jeden Schritt einer Auftragsbearbeitungs-App. Jeder Schritt des Bestellvorgangs hängt vom vorherigen Schritt ab Mein Problem ist, dass beim Aktualisieren des Browsers in Schritt 2 oder Schritt 3 des Bestellvorgangs; alle Eingabedaten verloren, und so möchte ich den Benutzer paraphieren Schritt 1 des BestellprozessesAngularJs: Browser des Browsers aktualisieren, zum ersten untergeordneten Status wechseln?
$stateProvider
.state('wizard', {
url: "/wizard",
templateUrl: 'template/newOrder.cshtml',
controller: 'createOrderController',
controllerAs: 'vm',
data: { pageTitle: 'Wizard form' }
})
.state('wizard.step_one', {
url: '/step_one',
templateUrl: 'template/step1.cshtml',
controller: 'orderStep1Controller',
controllerAs:'vm',
data: { pageTitle: 'Wizard form' }
})
.state('wizard.step_two', {
url: '/step_two',
templateUrl: 'template/step2.cshtml',
controller: 'orderStep2Controller',
controllerAs: 'vm',
data: { pageTitle: 'Wizard form' }
})
.state('wizard.step_three', {
url: '/step_three',
templateUrl: 'template/step3.cshtml',
controller: 'orderStep3Controller',
controllerAs: 'vm',
data: { pageTitle: 'Wizard form' }
})
.state('wizard.step_four', {
url: '/step_four',
templateUrl: 'template/step4.cshtml',
controller: 'orderStep4Controller',
controllerAs: 'vm',
data: { pageTitle: 'Wizard form' }
})
;
Grüße umgeleitet werden,
Erstellen Sie einen Dienst, der die Eingabedaten überprüft, wenn der Controller geladen wird, und wenn die Validierung fehlschlägt, senden Sie sie an Schritt 1. ODER verwenden Sie lokalen Speicher/Cookies, um ihre Daten zu speichern – Ronnie