首页 > 解决方案 > 如何将 laravel 与 react native 连接起来

问题描述

我是 react native 的新手,所以我不知道如何将 laravel rest api 与 react native 连接起来。我的第一个问题是,laravel 在http://127.0.0.1:8000上运行,而在我的 wifi ip 地址上运行本机反应,所以两者都在不同的主机和端口上运行,所以这有什么问题还是没问题?其次,我如何从 laravel api 获取数据,我在 app.js 文件中创建了类似的东西

class App extends React.Component{
  constructor()
  {
    super();
    this.state={
      data :[]
    }
  }
  componentDidMount()
  {
    this.callApi();
  }
  async callApi()
  {
    
    let data=await fetch('http://127.0.0.1:8000/api/users')
    let adata= await data.text();
    this.setState({data:adata})
    console.warn(ddata)
    
  }
  render(){
    console.warn("render",this.state.data)
    return(
      <View>
         <Text style={{fontSize:50}}>FlatList</Text>
         <FlatList 
        data={this.state.data}
        renderItem={({item})=><Text style={{fontSize:50}}>{item.name}</Text>}
        keyExtractor={(item, index) => index.toString()}
        />
      </View>
    )
  }
}

export default App;

但这给了我很多错误

标签: laravelreact-native

解决方案


您的两台设备都应该在同一个网络上(即,如果您使用两台设备)。如果是模拟器,你可以在 react native 项目中通过 localhost 使用 laravel api,但如果是实际的手机(如果你使用 expo),它的 localhost 与你的计算机不同,所以可能有网络错误。最好托管api,(这是我所做的)它解决了很多问题。至于那些错误,请给我们看。


推荐阅读