在onPress事件上反应本机发送2个值,然后传递到另一个屏幕

时间:2019-03-18 16:39:18

标签: react-native react-native-flatlist

这是我的JSON文件

{
    "name": "Thịt bò",
    "noed": 5
},
{
    "name": "Thịt heo",
    "noed": 3
}

我让他们进入Flatlist

   <FlatList
      data={cats}
      keyExtractor={item => item.name}
      renderItem={({item})=>(
          <View>
              <Text style={styles.catsItem} onPress={() => this.changeTextInput(item.name)}>{item.name} {item.noed}</Text>
          </View>
      )}
/>

但是我想发送两个值,分别是item.nameitem.noed到TextInput,然后将它们发送到另一个屏幕

changeTextInput(item){
        this.setState({name: item});
    };

但是我不知道如何将item.noed发送到TextInput以及如何将它们发送到另一个屏幕。 我很新,所以请帮助我。

1 个答案:

答案 0 :(得分:1)

使用react-navigation npm软件包从一个屏幕重定向到另一个屏幕,您还可以传递值

这有两部分:

将参数作为对象的第二个参数放置到对象中,以将其传递到路线:

this.props.navigation.navigate
('RouteName', { /* params go here */ })




onPress={()=>this.props.navigation.navigate('Details', 
    { itemId: 86, otherParam: 'anything you want here', })};

阅读屏幕组件中的参数:

this.props.navigation.getParam(paramName, defaultValue)

有关更多信息,请阅读以下文档

React Navigation Link