ant-design/components/form/demo/_semantic.tsx
2025-05-24 09:07:54 +08:00

59 lines
1.4 KiB
TypeScript

import React from 'react';
import { Form, Input } from 'antd';
import SemanticPreview from '../../../.dumi/theme/common/SemanticPreview';
import useLocale from '../../../.dumi/hooks/useLocale';
const locales = {
cn: {
root: '根元素',
label: '标签元素',
content: '内容元素',
},
en: {
root: 'Root element',
label: 'Label element',
content: 'Content element',
},
};
const App: React.FC = () => {
const [locale] = useLocale(locales);
return (
<SemanticPreview
componentName="Form"
semantics={[
{ name: 'root', desc: locale.root, version: '6.0.0' },
{ name: 'label', desc: locale.label, version: '6.0.0' },
{ name: 'content', desc: locale.content, version: '6.0.0' },
]}
>
<Form
name="basic"
labelCol={{ span: 8 }}
wrapperCol={{ span: 16 }}
style={{ maxWidth: 600 }}
initialValues={{ remember: true }}
autoComplete="off"
>
<Form.Item
label="Username"
name="username"
rules={[{ required: true, message: 'Please input your username!' }]}
>
<Input />
</Form.Item>
<Form.Item
label="Password"
name="password"
rules={[{ required: true, message: 'Please input your password!' }]}
>
<Input.Password />
</Form.Item>
</Form>
</SemanticPreview>
);
};
export default App;