2016-08-08 32 views
1

Ich speichere einige Daten im Array. die Gonna wie dieseWENN ELSE in reagiert (Wenn die Bedingung korrekt ist, bring mich zu einer anderen Seite)

sein ist
 datas[ 
     password:"dfsdfsd", 
     username : "dfgdgdfg55555", 

     password:"deep", 
     username : "dfgdgdfg56556", 

     password:"hello", 
     username : "dfgdgdfg65", 

     password:"hello1234", 
     username : "dfgdgdfg123" 
    ] 

jetzt möchte ich den Benutzernamen camapare. und ich versuche es und will, wenn die Bedingung wahr ist (bring mich auf eine andere Seite), aber ich weiß nicht, wie das geht.

checkCred(){ 
    var details_array = this.state.datas1 ; 
    console.log(details_array); 
    for(var i=0; i < details_array.length; i++) { 
     var currentObject = details_array[i]; 
     if (this.email.value === currentObject.username) { 
      console.log('yes done it'); 
      window.location = '/Index';// this is not working and think window.location is stupid methed... 
      // please guide me if you have any better idea than this 
     } 

    } 
    } 
    <input ref={(e) => this.email = e} name="email" type="email" /><br/> 

Bin ich richtig oder nicht?

Antwort

2

Make folgenden Änderungen wie pro Erwartungen zu arbeiten,

var details_array = this.state.datas ; 
for(var i=0; i < details_array.length; i++){ 
var currentObject = details_array[i]; 
if (this.email.value === currentObject.username){ 
    console.log('yes done'); 
} 
} 

Hinweis: hoffen, dass Sie Daten in details_array haben.

+0

ja ich habe Daten in details_array –

+0

jetzt mache ich es so. dann nimmt es nur letzten Wert des Arrays .. nicht andere ... –

+0

getan .. ich fand heraus .. danke –