2017-06-05 3 views
0

例を試しています。 /REACT_NATIVE_PROJECTS/newApp/index.android.js:予期しないトークン(25:6)ここに私のコードは反応ネイティブの変数をチェックする方法はnullですか?

である輸出のデフォルトのクラスnewAppは、コンポーネント{

render() { 
    var data = this.getWeatherFromApiAsync() 

    return (
     if(data != null) 
     { 
     <View> 
     <Text>got data</Text> 
     </View> 
     }else 
     { 
     <View> 
     <Text>no data</Text> 
     </View> 
     } 


    ); 
    } 

    getWeatherFromApiAsync() { 
     return fetch('http://api.openweathermap.org/data/2.5/forecast/daily?q=94043&mode=json&units=metric&cnt=14&APPID=18dcba27e5bca83fe4ec6b8fbeed7827') 
     .then((response) => response.json()) 
     .then((responseJson) => { 
      this.setState({isLoading: false, jsonData: responseJson}); 
      console.log(responseJson); 
      return responseJson; 
     }) 
     .catch((error) => { 
      console.error(error); 
     }); 
    } 
} 

が、これは次のエラーに

Eを与える拡張しますEで :\ REACT_NATIVE_PROJECTS \ newApp \ index.android.js:25:6 processBundleResult DevServerHelper.java:381 アクセス$ 400 DevServerHelper.java:65 が実行 DEVS erverHelper.java:333 emitChunk MultipartStreamReader.java:69 readAllParts MultipartStreamReader.java:116 onResponse DevServerHelper.java:321 RealCall.java:126 実行 NamedRunnable.java:32 runWorker ThreadPoolExecutorを実行します。 Javaの:1113 実行 ThreadPoolExecutor.java:588 実行 Thread.java:818

は私が間違って何をしますか。それは部分を比較しているのですか?

答えて

1

これは、ネイティブどのように反応するか我々は条件付きのレンダリングを使用している:

{1 + 2 == 3 & &私は左手が真であるときにのみ表示}

あなたの構文を修正します。私はそれがjsonStringが含まれているsould変数 'データ' を持っている場合はどう

https://atticuswhite.com/blog/render-if-conditionally-render-react-components/

+0

。 'データ'に値があるのか​​、それとも空であるのかをどうやって確認するのですか?レンダー機能の先頭にある –

+0

あなたはそれを行うことができます render(){ const checkdata = data?data:null; } –

+0

ありがとうございます。それは本当に助けた –

関連する問題