Je vais avoir un problème avec la modification de l'URL de la page une fois qu'un formulaire a été soumis.
Voici le flux de mon application:
- Les itinéraires sont établis, l'URL est reconnu à une certaine forme de la page.
- Le chargement de la Page, contrôleur des ensembles de variables, les directives sont licenciés.
- Une forme spéciale de la directive est déclenché qui effectue une forme particulière de soumission à l'aide d'AJAX.
- Après l'AJAX est effectuée (Angulaire ne prend pas soin de l'AJAX), puis un rappel est tiré et que la directive exige que le $scope.onAfterSubmit fonction qui définit l'emplacement.
Le problème est que, après la définition de l'emplacement de la rien ne se passe. J'ai essayé la définition de l'emplacement param ' / ' ... Nope. J'ai aussi essayé de ne pas soumettre le formulaire. Rien ne fonctionne. Quelqu'un peut-il m'aider s'il vous plaît?
J'ai testé pour voir si le code atteint le onAfterSubmit fonction (ce qu'il fait).
Ma seule pensée est que d'une certaine façon le domaine de la fonction est changé (depuis sa appelé à partir de la directive), mais là encore, comment peut-il appeler onAfterSubmit si la portée a changé?
Voici mon code
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'];