2017-06-05 52 views
0

即时通讯一个例子。这里是我的代码如何检查反应本身的变量是否为空?

出口默认类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:/REACT_NATIVE_PROJECTS/newApp/index.android.js:意外的令牌(25:6) 在E:\ REACT_NATIVE_PROJECTS \ NEWAPP \ index.android.js:25:6 processBundleResult DevServerHelper.java:381 获得$ 400 DevServerHelper.java:65 执行 开发者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 & &我显示出来,只有当左手是真的}

纠正你的语法。

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

+0

如果我有变量“数据”,其中它含有前人的精力一个jsonString。我如何检查'数据'是否有值或者是空的? –

+0

在你的渲染函数的顶部你可以做到这一点 render(){ const checkdata = data?data:null; } –

+0

谢谢。这真的有帮助 –

相关问题