2017-09-09 17 views
0

私のコードは以下のとおりです。私はresponseJson.APITokenはIコンソールが定義されていない関数はネイティブではありません

+0

エラーは '_this.storeAPIToken'です。 – Dekel

+0

' verifyOTPResponse'には 'storeAPIToken'機能がありません。 'this'を使って間違っています。 – bennygenel

+0

エラーが 'this.storeAPIToken'が' undefined'であるという事実を参照しているようです - おそらくあなたはその関数を呼び出すときに 'this'を必要としません。 –

答えて

1
それを記録したときに、それは価値があるnullでない

エラー未定義 は( '_this.storeAPIToken(responseJson.APIToken)' を評価する)関数ではありません
async function storeAPIToken(APIToken) { 
    try { 
     await AsyncStorage.setItem('@auth:APIToken', APIToken); 
    } catch (error) { 
     console.log("STORE API", error); 
    } 
} 


const verifyOTPResponse = (dispatch, responseJson) => { 
    console.log("checkOTPAPIStatus", responseJson.status); 
    if (responseJson.status == "OK") { 
     console.log("verifyOTPEntered OK"); 

     console.log('Token', responseJson.APIToken); 
     this.storeAPIToken(responseJson.APIToken); 

     firebase.auth().signInWithCustomToken(responseJson.token).then(() => { 
      console.log("Login successfulx"); 

      dispatch({ 
       type: types.LOGIN_SUCCESS, 
       payload: 1 
      }); 

     }).catch(function(error) { 
      var errorCode = error.code; 
      var errorMessage = error.message; 

      dispatch({ 
       type: types.LOGIN_FAIL, 
       payload: 0 
      }); 

     }); 
    } else { 
     dispatch({ 
      type: types.OTP_VERIFICATION_FAIL, 
      payload: loginStatus 
     }); 

を取得します

this.storeAPIToken(responseJson.APIToken);を呼び出す行からthis.を削除します。 このその行を参照するコンテキストは、1とは異なり、storeAPITokenです。

関連する問題