2016-08-18 112 views
1

在以下代碼中,日誌返回「true」,但條件不起作用。任何人都可以知道這裏發生了什麼問題嗎?反應原生條件不起作用?

componentDidMount() { 
     TimerMixin.setTimeout(
     () => { 
      console.log(this.state.loginStatus); 
      if(this.state.loginStatus == "true"){ 
       console.log("go to inner"); 
       //this._onPress(); 
      } 
      console.log(this.state.loginStatus); 
      }, 
      300 
     ); 
     } 

回答

3

您正在比較布爾型(loginStatus)與字符串。刪除引號,例如loginStatus == true並且還使用===而不是==。您也可以只做if(this.state.loginStatus)

+0

這已經在爲我工作「if(this.state.loginStatus)」。抱歉回覆晚了。但我已經在字符串中分配了值(在JSON中)....雖然if(this.state.responseData.status.status ==「true」)這對我有用......真令人費解。 –

+0

請記住使用'==='而不是'=='! –