laravel - 如何将 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;
但这给了我很多错误
解决方案
您的两台设备都应该在同一个网络上(即,如果您使用两台设备)。如果是模拟器,你可以在 react native 项目中通过 localhost 使用 laravel api,但如果是实际的手机(如果你使用 expo),它的 localhost 与你的计算机不同,所以可能有网络错误。最好托管api,(这是我所做的)它解决了很多问题。至于那些错误,请给我们看。
推荐阅读
- python - Python 的 create_autospec 中的实例参数有什么作用?
- tensorflow - 在 TensorFlow 中训练令牌分类 Transformer 模型
- python - Python:如何根据列条件合并两个数据框?
- matlab - 将循环简化为向量形式
- swift - SwiftUI 清除文本字段 FirstResponder
- c# - 使用 HTML 将相同的 Web 表单添加到两个不同的母版页
- vb.net - 响应式 Windows 窗体 (VB.Net)
- c - 完全相同的代码,一个段错误,一个没有
- c - 构建时出现此错误: `fb_info' 的多个定义;framebuffer.h:22: 首先在这里定义 collect2.exe: 错误: ld 返回 1 退出状态
- reactjs - 如何键入异步 thunk 的调度?