Tengo un problema para cambiar la URL de la página después de enviar un formulario.
Aquí está el flujo de mi aplicación:
- Las rutas están configuradas, la URL se reconoce en alguna página de formulario.
- La página se carga, el controlador establece variables, las directivas se activan.
- Se activa una directiva de formulario especial que realiza un envío de formulario especial utilizando AJAX.
- Después de que se realiza el AJAX (Angular no se ocupa del AJAX), se activa una devolución de llamada y la directiva llama a la
$scope.onAfterSubmitfunción que establece la ubicación.
El problema es que después de configurar la ubicación no pasa nada. También he intentado configurar el parámetro de ubicación /... No. También he intentado no enviar el formulario. Nada funciona.
He probado para ver si el código alcanza la onAfterSubmitfunción (lo que hace).
Mi único pensamiento es que de alguna manera se cambia el alcance de la función (ya que se llama desde una directiva), pero, de nuevo, ¿cómo se puede llamar onAfterSubmitsi el alcance cambió?
Aquí está mi código
var Ctrl = function($scope, $location, $http) {
$http.get('/resources/' + $params.id + '/edit.json').success(function(data) {
$scope.resource = data;
});
$scope.onAfterSubmit = function() {
$location.path('/').replace();
};
}
Ctrl.$inject = ['$scope','$location','$http'];
alguien me puede ayudar por favor?