reactjs - 将 json 数据从 API 访问到前端 Reactjs
问题描述
我想制作一个应用程序,在您的保险到期时提醒您,并且我想访问我的数据库中的数据以制作编辑表单并用这些数据填充字段。我在 InsurancesController 中有这个功能:
public function edit($insurance)
{
$insurance = Insurance::whereId($insurance)->first();
return response() -> json([
'insurance' => $insurance
]);
}
我有这条路线:
<Route path="/:id/edit" exact render={props => (
<EditInsurance {...props} insurances={this.state.insurances} />)}
/>
我有这个组件,只是为了测试:
import React, { Component } from "react";
class EditInsurances extends Component {
render() {
const { insurances } = this.props;
return (
<div>
<p>Hello</p>
{insurances.map(insurance => (
<p>{insurance.id}</p>
))}
</div>
);
}
}
export default EditInsurances;
如何仅访问我要编辑的保险?
编辑
这是我使用邮递员时得到的:reminderapi.test/api/insurances/5/edit:
{
"insurance": {
"id": 5,
"user_id": 1,
"tip": "Asigurare",
"date_exp": "1975-12-28",
"date_notif": "2006-06-19",
"note": "Vitae dolorem corporis impedit eligendi laborum quidem.",
"created_at": "2019-03-11 09:49:23",
"updated_at": "2019-03-11 09:49:23"
}
}
解决方案
您可以从要编辑的保险的路线 ID 中获取。
然后遍历所有保险并与路线中的 ID 进行比较。
class EditInsurances extends Component {
render() {
const { insurances } = this.props;
// get from url-route ID
const insuranceId = this.props.match.params.id;
const insurance = insurances.map(insurance => insurance.id === insuranceId)
return (
<div>
<p>Hello</p>
{insurance}
</div>
);
}
}
推荐阅读
- haskell - 如何与 cabal-3 和 ghc(也是 ghc-pkg)一起工作?
- html - 使用列数奇数的行跨度时如何删除表中的空白空间?
- sql - SQL Server:如何从表中创建层次结构组合
- javascript - 默认情况下自动选择单选按钮并执行“onchange”功能
- json - 如何在 Flutter 中发送 MultipartRequest 中的数组?
- testing - 迁移和测试 CLI 命令在 Visual Studio Code/VSCode 终端中不起作用
- python - 使用 tkinter 为 Python 程序创建 UI。Tkinter 中的按钮可以多次按下。如何创建“一个进程”弹出窗口?
- java - 插件更新错误“某些插件需要插件 JNA 才能安装 netbeans”
- python - 指定 Windows 路径时找不到文件错误
- javascript - 拖动桌面文档时更改鼠标光标