2016-10-23 5 views
0

ich versuche einfach wieEinstellzustand in ComponentDidLoad synchron

ComponentDidLoad(){ 
this.setState({ 
count: 1 
}) 

console.log(this.state.count) 

} 

jedoch etwas zu tun, wird es immer an die Konsole nicht definiert drucken. Gibt es eine Möglichkeit, dies zu tun, so dass es den Code synchron ausführt, um sicherzustellen, dass der Status festgelegt wurde, bevor console.log ausgeführt wird, so dass es nicht undefiniert zurückgibt.

kann wirklich nicht einen Weg finden, einen Rückruf zu implementieren .. nicht sicher, was zu tun .. Danke

+0

Vielleicht denken Sie an ComponentDidMount? –

+0

@NaderDabit mein Schlechter, ich war .. schrieb das auf dem Sprung .. die gleiche Frage obwohl. –

Antwort

0

Sie gehen zu müssen, um den Wert aus in dem nächsten Prozess anmelden, weil du aus bist Anmeldung der Zustand, bevor es Zeit hatte gesetzt zu werden, und um Ihre Frage zu einem Rückruf zu beantworten, hat ja setState einen. so etwas wie dies versucht:

ComponentDidLoad(){ 
    this.setState({ 
    count: 1 
    },() => { 
    console.log(this.state.count) 
    }) 
} 

setState bietet einen Rückruf, wenn der Zustand eingestellt wurde, und das ist ein guter Anwendungsfall, wenn man sicher ist, da der Zustandswert vornehmen muß.

+0

Danke! fand diese letzte Nacht .. funktioniert perfekt –