Bonjour à tous,
J'ai 3 fonctions différentes (f1,f2 et f3) qui me renvoie chacune une promise.
j'aurrais besoin du resultat de f1 dans f2 puis du résultat de f2 dans f3 avec des fonction de traitement à chaque fois. J'ai essayé dans une fonction f4 de faire
une autre solution aurrait pu etre d'utiliser $q.all et de récupérer le retour de mes 3 fonctions puis d'effectuer le traitement ensuite
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 var f4=function(){ f1.then(function(dataf1){ f2.then(function(dataf2){ f3.then(function(dataf3){ $scope.contenuedataf2=dataf2; traitement(dataf1,dataf2,dataf3); // iici il bug il me dit que dataf2 "is undefine" alors que $scope?contenuedataf2 s'affiche // et contient ce qu'il faut },function(dataf3){ }) },function(dataf2){}) },function(dataf1){ console.log("f1 echec")
j'ai fait
le code ci dessous m'affiche Dans success recup All dans la console
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 $q.all(f1,f2,f3).then( function(TableOfAllData){ console.log("Dans success recup All"); $scope.tableau=TableOfAllData; }, function(TableOfAllData){ console.log("echec success All"+TableOfAllData); $scope.present=TableOfAllData; } )
mais $scope.tableau est vide ce qui n'est pas normal
et je n'ai jamais eu de echec success All mais j'ai l'impression que sa ne fonctionne pas
j'ai bien ajouté $q dans les dépendance de mon controlleur
et "prise individuellement" elle renvoie bien un résultat correct
Merci d'avoir pris le temps de me lire
Votre aide est la bienvenue
Partager