2017-01-03 5 views
0

Ich habe einen eckigen Code, der auf der Maschine ohne Fehler läuft, dann möchte ich die Änderungen an git festschreiben, mein commit cmd lief erfolgreich, aber push sagt:TypeError: undefined ist kein Objekt - git push schlägt fehl

PhantomJS 2.1.1 (Windows 7 0.0.0) Controller: BasicInfo ... Controller Navigation ... FAILED speichern und gehen Sie zur Übersicht Typeerror: undefined ist kein Objekt (Bewertung 'data.responseMessage')

data.responseMessage enthält Bool-Wert. Ich dachte daran, eine Bedingungsprüfung für undefined wie unten hinzuzufügen, aber kein Glück.

if(data.responseMessage !== 'Undefined' { 
    res = data.responseMessage; 
} 

Mein eigentlicher Teil Code ist hier:

 function save() { 
      if(vm.basicInfoForm.$valid) { 
      blockUI.start('Saving personal information'); 
      employeeService.setEmployee(vm.employee) 
       .then(function Success(data) { 
        res = data.responseMessage; 

Der Wert für data.response aus employee.js Datei kommt und unten ist der Code:

function setEmployee(employee) { 
     _employee = null; 
     return Restangular.one('someURL').customPUT(employee) 
      .then(function Success(data) { 
       var responseData = { 
        responseMessage: data.isAddressChanged, 
        employeeData : _employee 
       }; 
       return responseData; 
      }) 
      ['catch'](function Failure() { 
       var responseData = { 
        responseMessage: false, 
        employeeData : null 
       }; 
       return responseData; 
      }); 
    } 

ich denke, es könnte wegen einiger Testfall Fehler während Git drücken. Jede Hilfe wird geschätzt!

Danke, Haseena

+0

verwendet Wenn 'data.responseMessage 'ist ein boolescher Wert, dann wird' data.responseMessage! == 'Undefined'' immer immer * true * zurückgeben, da Sie einen String streng mit einem booleschen Wert vergleichen (und verschiedene Typen sind niemals genau gleichwertig). Aber Ihr Fehler rührt von * Daten * undefiniert (anscheinend). – RobG

+0

Ich habe versucht, die Bedingung zu überprüfen, aber später entfernt –

+0

aktualisiert von Frage für die Quelle von data.response –

Antwort

0

ich in res als

res=data; 

und später im Code das Problem durch Speichern nur Datenobjekt lösen konnte ich

if(res.responsemessage.isAddressChange) {} 
Verwandte Themen