Ankündigung

Einklappen
Keine Ankündigung bisher.

AXIOS 2 Objekte zusammenfügen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • AXIOS 2 Objekte zusammenfügen

    Guten Tag,

    ich hoffe Ihr könnt mir helfen.

    Ich hole mir per AXIOS einmal eine Liste aller Prüflinge wenn Ergebnisse da sind, werden die angezeigt.


    PHP-Code:
     async  getTestees() {
              
    API.defaults.headers.common['Authorization'] = `Bearer ${this.$store.state.auth.token}`
              
    await  API.post('/evaluation/result/getTestees_Results',{
                    
    institut_idthis.$store.state.auth.user.institut_id,
                    
    eval_idthis.choosenValues.evaluation_id.id,
                })
                    .
    then((response) => {
                        
    this.testees response.data;
                        
    this.testees.forEach((item) => {

                           
    this.getAuditorResult(item.ResIDitem.id);

                        });
                        
    console.log(this.testees);
                     })
                    .catch( 
    error => { console.log(error); });
            }, 
    zu jedem dieser Einträge möchte ich mir dann noch die Prüfer mit ziehen.
    Das versuche ich mit dieser Funktion:

    PHP-Code:
      getAuditorResult(ResultIDTesteeID) {
                
    API.defaults.headers.common['Authorization'] = `Bearer ${this.$store.state.auth.token}`
                 
    API.post('/evaluation/result/getResult_Auditors',{
                    
    resultidResultID })

                    .
    then((resp) => {
                        
    //console.log(TesteeID);
                        
    var obj = {};
                        
    obj['auditors'] = resp.data;
                        
    // [].push.call(this.testees[TesteeID], obj);
                        
    this.testees.push.call(this.testees[TesteeID],obj);

                    })
                    .catch( 
    error => { console.log(error); });
            }, 
    Ich bekomme dann als Console Log von this.testees sowas:
    PHP-Code:
    7:
    0:
    auditors: Array(2)
    0:
    Firstname"Eins"
    Lastname"Prüfer"
    result_id13

    1
    :
    Firstname: (...)
    Lastname: (...)
    result_id: (...)

    City: (...)
    FirstName: (...)
    LastName: (...)
    PLZ: (...)
    ResID: (...)
    Street: (...)
    Summe: (...)
    Year: (...)
    id: (...) 
    Was ich möchte, dass dieses neue Array im Object genauso gegliedert ist wie FirstName oder LastName.

    Warum packt er mir da immer eine 0 davor? Wie kann ich das wegnehmen? Ich hatte jetzt schon einige Möglichkeiten probiert, aber ich komme da nicht wirklich weiter.

    Danke.

  • #2
    1. Poste das Array mal bitte mit Einrückungen oder als json
    2.
    Code:
    .catch( error => { console.log(error); });
    Ganz schlechte Idee. Deine restliche Applikation bekommt niemals mit, wenn ein Fehler aufgetreten ist.
    3. getAuditorResult muss mit await aufgerufen werden. Ansonsten wird in getAuditorResult lediglich die Promise "gestartet" und in getTestees geht der Programmablauf einfach weiter.

    Nur als Frage: Du hast Promises und async/await verstanden?

    Kommentar

    Lädt...
    X