fluentui上有一个漂亮的基于模式的表单组件
import React from 'react';
import { Form, Button } from '@fluentui/react-northstar';
const fields = [
{
label: 'First name',
name: 'firstName',
id: 'first-name-shorthand',
key: 'first-name',
required: true,
},
{
label: 'Last name',
name: 'lastName',
id: 'last-name-shorthand',
key: 'last-name',
required: true,
},
{
label: 'I agree to the Terms and Conditions',
control: {
as: 'input',
},
type: 'checkbox',
id: 'conditions-shorthand',
key: 'conditions',
},
{
control: {
as: Button,
content: 'Submit',
},
key: 'submit',
},
];
const FormExample = () => (
<Form
onSubmit={() => {
alert('Form submitted');
}}
fields={fields}
/>
);
export default FormExample;
但是他们没有提供任何方法/示例来收集我所知道的数据。(至少不在文档中)。我可以从事件中收集大多数值,onSubmit
但它变得很棘手,因为并非所有 html 组件都必须是具有该value
属性的输入元素。我也不认为这是预期的方式。任何人都可以启发我吗?我认为您必须能够以某种方式将 onChange 函数提供给它。还是我应该在每个字段对象中添加 onChange 函数?