将本机传递数据反应到另一个屏幕

React Native Pass data to another screen

我需要将一些数据从一个屏幕传递到另一个屏幕,但我不知道该怎么做。我已经搜索并阅读了有关 Redux 的内容,但它有点复杂,因为我从未使用过它,而且大多数教程对新手来说都很混乱。但如果我不用 Redux 也能做到,那会更好。

所以,当我点击一个按钮时,它会运行:

  onSearch() {
    var listaCarros = fetch(`URL`, {
        method: 'GET',
        })
      .then((response) => { return response.json() } )
      .then((responseJson) => {
        console.log(responseJson)
      })
  }

我想将从这里获得的数据传递到另一个屏幕。 如果重要的话,我正在使用 router-flux。

您可以将响应保存在当前组件的状态中,例如

onSearch() {
    var listaCarros = fetch(`URL`, {
        method: 'GET',
        })
      .then((response) => { return response.json() } )
      .then((responseJson) => {
        console.log(responseJson);
        /*for react-native-router-flux you can simply do
         Actions.secondPage({data:responseJson});  and you will get data at SecondPage in props

       */
        this.setState({
         dataToPass :responseJson
        });
      })
}

然后在下面的return中,如果您想将数据传递给名为SecondPage 的新组件,您可以按照以下方式进行

render(){
  return(
   {this.state.dataToPass && <SecondPage data ={this.state.dataToPass}>} //you will get data as props in your second page
  );
}