Sto scrivendo un wizard in più fasi in angularjs. In ogni passaggio, desidero salvare sul server e passare al passaggio successivo nella procedura guidata.Procedura consigliata per salvare lo stato del modulo e il progresso nell'applicazione angularjs?
L'utilizzo di collegamenti semplici per passare al passaggio successivo e il salvataggio sul server di backend è semplice e aggiorna la mia posizione, mantenendo la cronologia del browser, ma questo approccio viola l'intento di GET di essere sicuro e idempotente.
Sto adottando questo approccio;
$scope.progressToSetp2 = function() {
$http.put('quote/' + $routeParams.quoteId, $scope.quote)....;
$scope.OnAfterSubmit = function() {
$location.path('/steptwo').replace();
$scope.$apply();
};
$scope.includeFormPartial = 'partials/steptwo.html';
};
È un buon approccio? Ci sono approcci migliori?
Grazie.
Grazie per la tua risposta @ aladdin-homs, la ragione per cui voglio salvare sul server tra una procedura e l'altra è quella di acquisire i dati nella procedura guidata anche se l'utente abbandona il processo. L'unico passaggio obbligatorio della procedura guidata è il primo passaggio, i passaggi aggiuntivi sono domande/azioni opzionali. Esplorerò l'utilizzo di un servizio per i miei bisogni, ma la mia domanda iniziale rimane; Come implementare al meglio la progressione attraverso i passaggi di una procedura guidata mantenendo la cronologia del browser (quindi i pulsanti Indietro/Avanti browser funzionano) E fare un PUT al mio back-end tra ogni transizione. – jevonearth
Posso vedere il tuo punto, ma poi non posso aiutarti –
@jevonearth come riesci nella tua implementazione? Sono nella stessa situazione, stiamo costruendo un modulo in più fasi e, dopo ogni passaggio, le informazioni devono essere salvate, perché è una forma estesa e l'utente può fermarsi in qualsiasi punto (dopo il primo). –