2016-06-20 8 views
0

Ich feuere einen HTTP-Post und auf seinen Erfolg feuern einen anderen Beitrag. Jetzt muss ich Antworten von beiden Anrufen sammeln und sie vergleichen.Aufeinander folgende http-Aufrufe in angularjs mit Erfolg

Problem Ich bin konfrontiert ist der Code im Inneren Erfolg des zweiten Aufruf geschrieben wird nicht ausgeführt, der Debugger verhält sich auch seltsam. Nur die erste Codezeile im zweiten Erfolg wird ausgeführt, bei der es sich um eine Konsole und einen Debugger handelt, die nicht zu anderen Zeilen gehören.

this._docgenService.getTemplate(alreadyExistingTemplateId).success(
       serverTemplate => { 

        console.log(serverTemplate); 
        return this._docgenService.getXMLParts(files).success(
        localTemplate => { 
         console.log(localTemplate); 
         var addItemToMappingContract = true; 
         for (var i = 0; i < localTemplate.tags.length; i++) { 
          console.log("for loop"); 
          for (var j = 0; j < serverTemplate.mappings[0].templateElements.contentTexts.length; j++) { 
           if (localTemplate.tags[i].name === serverTemplate.mappings[0].templateElements.contentTexts[j].name) { 
            addItemToMappingContract = false; 
            break; 
           } 
          } 

          if (addItemToMappingContract === true) { 
           var tempContextText: Mapping.IContentText; 
           angular.copy(serverTemplate.mappings[0].templateElements.contentTexts[0], tempContextText); 
           serverTemplate.mappings[0].templateElements.contentTexts.add(
           {}); 
          } 
         } 


        } 

        ); 


       }) 

Antwort

0

Wenn Sie die Erfolgsfunktion aufrufen (nachdem die erste asynchrone Funktion aufgerufen wurde), geben Sie den zweiten asynchronen Aufruf zurück. Sie übergeben das zweite Versprechen, anstatt es auszuführen. Versuchen Sie, die return aus dem Versprechen zu entfernen:

+0

Infact Ich hatte es ohne vorherige Rückkehr, aber überall sah ich Blogs sagen zurück das Versprechen. Beide geben mir das gleiche Verhalten. – Charu

Verwandte Themen