我正在尝试在 reactjs 中制作一个像https://jsonresume.org/schema/(JSON格式)这样的表单。
索引.js:
import React, { useState, Fragment } from 'react';
import BasicDetails from '../components/basic_details';
import EmploymentDetails from '../components/employment_details';
const App = () => {
const handleSubmit = (e) => {
e.preventDefault();
console.log('get the whole form json here');
};
return (
<>
<h1>Dynamic Form Fields in React</h1>
<form onSubmit={handleSubmit}>
Basic Details:
<br />
<hr />
<BasicDetails />
<br />
<br />
Employment Details:
<br />
<hr />
<EmploymentDetails />
<div className="submit-button">
<button
className="btn btn-primary mr-2"
type="submit"
onSubmit={handleSubmit}
>
Save
</button>
</div>
{/* <pre>{JSON.stringify(inputFields, null, 2)}</pre> */}
</form>
</>
);
};
export default App;
可以在附加的代码<BasicDetails />
和框中找到诸如和<EmploymentDetails />
代码之类的组件。
在这里,我使表单为每个喜欢的人都有一个单独的组件,
---> Basic Details
---> Employment Details
---> ...So on ...
要求:
我在需要这些投入在一个JSON格式结合这样的
现在我有不同文件中的基本详细信息和就业详细信息 那么如何将这两个文件/组件组合成一个完整的 JSON?
单击提交按钮 (index.js) 时预期的 JSON 格式:
{
"basicDetails": {
"firstName": "John",
"lastName": "Doe"
},
"companyDetails": [{
"companyName": "xyz",
"designation": "lmn"
},
{
"companyName": "abc",
"designation": "def"
}
]
}
查看以下代码和框,其中包含相应组件中输入字段的 JSON 格式。我需要组合这些并在单击提交按钮时显示最终表单。
Codesandbox: https ://codesandbox.io/s/next-dynamic-testing-issue-forked-ieqf5
注意:组件部分将不断增加,我们将添加新组件,如技能、教育细节(此处未添加,但将来会添加)等,因此请相应地提供解决方案。
非常感谢提前..