React Native:在Promise之外重用Promise参数?

时间:2018-12-06 14:44:54

标签: react-native promise

我定义了一个获取查询的承诺。我有一个json数组:

    fetch('query')
    .then(response =>response.json())
    .then(json => { blabla})

我想将json用作Promise之外的函数参数:

     render(){
     return(
    <View onLayout={this.myFonction(json)>
    </View>)}

    myFunction =(json)=>{ 
     var array = json.names
     array.maps(value => {
      return (
      <Icon        
        name='heart'
        type='emo'
        color='red'          
        onPress={this.onPressIcon(value)} />);
      });
    }

我得到的只是它没有定义。 甚至可以重用promise参数吗?

1 个答案:

答案 0 :(得分:0)

在这里,我们再次是@danaso :)。尝试以这种方式实现您的组件。

您的提取方法将设置组件状态:

fetch('query')
.then(response =>response.json())
.then(json => { this.setState({ array: json.names })})

因此在render方法中:

render(){
  const { array } = this.state;
  return(
    <View>
      array.map(value => {
        return (
          <Icon        
            name='heart'
            type='emo'
            color='red'          
            onPress={this.onPressIcon(value)} />
        )
      })
    </View>
  )
}