javascript - 根据用户输入 id 从 JSON 中按名称获取项目
问题描述
嘿,我将如何根据用户输入的内容从 JSON 文件中按名称获取项目?我有一个带有 id 和名称的 JSON 文件。我希望用户输入一个数字,然后显示与该 ID 号关联的项目名称。我为此使用 ReactJS。任何建议将不胜感激。谢谢你
解决方案
您可以将 JSON 文件读取为 Javascript 对象或数组。我使用反应钩子。对不起,我的英语很糟糕。
import { useState } from 'react';
import jsonData from './data.json';
export default function Test() {
const [name, setName] = useState('');
const onChange = (e) => {
// jsonData is javascript array when import it
const data = jsonData.find((d) => d.id == e.target.value);
if (data) {
setName(data.name);
}
};
return (
<div>
<input onChange={onChange} />
<p>Name: {name}</p>
</div>
);
}
用于测试的 JSON 文件:
[
{
"id": 1,
"name": "abc"
},
{
"id": 2,
"name": "def"
},
{
"id": 3,
"name": "ghi"
}
]
推荐阅读
- java - 为什么我在创建列表时会收到错误消息?
- node.js - Cloud Function 无法写入 Cloud Firestore 中的 Map 数据类型
- android - In App Billing - SKU 在计费过程中为空
- wordpress - 在 WooCommerce 注册表单中添加第二个复选框
- r - 如何在决策树规范中设置拆分规则?
- windows - Windows Compact Embedded:从 C++ 调用 C# DLL
- terraform - 使用没有特定提供程序版本的 Terraform
- python - 无法找到 CSV 文件
- php - 我正在使用 load data local infile 导入数据。我希望每一行都有一个包含动态值的列。我怎样才能做到这一点?
- azure - 从 azure 管道中的发布文件夹构建 docker 映像