袘懈斜谢懈芯褌械泻邪 锌芯蟹胁芯谢褟械褌 褋芯蟹写邪胁邪褌褜 薪械褋泻芯谢褜泻芯 Formik 褎芯褉屑 芯写薪芯胁褉械屑械薪薪芯 懈 锌芯谢褍褔邪褌褜 写芯褋褌褍锌 泻 薪懈屑 褔械褉械蟹 褋锌械褑懈邪谢褜薪褘泄 芯斜褗械泻褌 泻芯薪褌褉芯谢邪.
袘懈斜谢懈芯褌械泻邪 锌芯蟹胁芯谢褟械褌:
- 小芯蟹写邪胁邪褌褜 formik 褎芯褉屑褘 褋 芯褌写械谢褜薪褘屑, 褋芯斜褋褌胁械薪薪褘屑 蟹薪邪褔械薪懈械屑 泻芯薪褌械泻褋褌邪. 协褌芯 锌芯谢薪芯褑械薪薪褘械 褎芯褉屑褘 褋芯 褋胁芯懈屑 谢懈褔薪褘屑 褋芯褋褌芯褟薪懈械屑.
- 袩芯谢褍褔懈褌褜 泻芯薪褌褉芯谢褜 薪邪写 胁褋械屑懈 屑懈泻褉芯褎芯褉屑邪屑懈, 褔械褉械蟹 锌褉械写芯褋褌邪胁谢褟械屑褘泄 芯斜褗械泻褌 泻芯薪褌褉芯谢邪. 袙褘 屑芯卸械褌械 锌芯谢褍褔懈褌褜 蟹薪邪褔械薪懈褟 胁褋械褏 褎芯褉屑, 胁褘锌芯谢薪懈褌褜 胁邪谢懈写邪褑懈褞 胁褋械褏 褎芯褉屑, 懈谢懈 胁芯褋锌芯谢褜蟹芯胁邪褌褜褋褟 API 谢褞斜芯泄 懈蟹 褎芯褉屑褘 锌芯 械械 懈屑械薪懈.
小屑芯褌褉懈 peer dependencies.
yarn add @alfa-bank/corp-ao-microforms袦懈泻褉芯褎芯褉屑褘 胁芯蟹屑芯卸薪芯 懈褋锌芯谢褜蟹芯胁邪褌褜 褌芯谢褜泻芯 胁 褎褍薪泻褑懈芯薪邪谢褜薪褘褏 泻芯屑锌芯薪械薪褌邪褏 褌邪泻 泻邪泻 芯薪懈 懈褋锌芯谢褜蟹褍褞褌 React Hooks.
const { MicroMicroformContextformControl, Microform, microformsControl } = useMicroform();袙褘蟹芯胁 褏褍泻邪 胁芯蟹胁褉邪褖邪械褌 芯斜褗械泻褌 褋 褌褉械屑褟 泻谢褞褔邪屑懈: MicroformContext - 袪芯写懈褌械谢褜褋泻邪褟 芯斜芯谢芯褔泻邪, 懈屑械薪薪芯 蟹写械褋褜 褋芯蟹写邪械褌褋褟 泻芯薪褌械泻褋褌 懈 泻芯薪褌褉芯谢 褋 锌芯屑芯褖褜褞 泻芯褌芯褉芯谐芯 胁褘 屑芯卸械褌械 褍锌褉邪胁谢褟褌褜 胁褋械屑懈 屑懈泻褉芯褎芯褉屑邪屑懈. 袙褘 写芯谢卸薪褘 芯斜械褉薪褍褌褜 胁褋械 褋胁芯懈 屑懈泻褉芯褎芯褉屑褘 胁 褝褌芯褌 泻芯屑锌芯薪械薪褌. Microform - 袣芯屑锌芯薪械薪褌 屑懈泻褉芯褎芯褉屑褘, 芯斜械褉褌泻邪 薪邪写 泻芯屑锌芯薪械薪褌芯胁 Formik. 小芯蟹写邪械褌 薪芯胁褍褞 褎芯褉屑褍 懈 锌褉懈胁褟蟹褘胁邪械褌 械械 泻 芯斜褖械屑褍 泻芯薪褌械泻褋褌褍 懈 泻芯薪褌褉芯谢褍 褍锌褉邪胁谢械薪懈褟 屑懈泻褉芯褎芯褉屑邪屑懈. 袨斜褟蟹邪褌械谢褜薪褘屑 锌邪褉邪屑械褌褉芯屑 褟胁谢褟械褌褋褟 name - 懈屑褟 屑懈泻褉芯褎芯褉屑褘, 懈屑械薪薪芯 锌芯写 褝褌懈屑 懈屑械薪械屑 屑懈泻褉芯褎芯褉屑邪 斜褍写械褌 写芯褋褌褍锌薪邪 懈蟹 泻芯薪褌褉芯谢邪. 孝邪泻 卸械 胁褘 屑芯卸械褌械 锌械褉械写邪褌褜 options - 褝褌芯 胁褋械 薪邪褔邪谢褜薪褘械 蟹薪邪褔械薪懈褟 Formik. 袦懈泻褉芯褎芯褉屑邪 胁 泻邪褔械褋褌胁械 children 锌褉懈薪懈屑邪械褌 render function 懈 锌械褉械写邪械褌 胁 泻邪褔械褋褌胁械 邪褉谐褍屑械薪褌芯胁 褉械薪写械褉 褎褍薪泻褑懈懈 2 锌邪褉邪屑械褌褉邪: formikProps - 胁褋械 API 褋芯蟹写邪薪薪芯泄 褎芯褉屑褘, 泻芯褌芯褉褍褞 褋芯蟹写邪械褌 Formik microformsControl - 褌芯褌 褋邪屑褘泄 芯斜褗械泻褌 泻芯薪褌褉芯谢邪. 效械褉械蟹 薪械谐芯 胁褘 屑芯卸械褌械 锌芯谢褍褔懈褌褜 写芯褋褌褍锌 泻 蟹薪邪褔械薪懈褟屑 写褉褍谐芯泄 褎芯褉屑褘 懈蟹 褌械泻褍褖械泄. microformsControl - 褌芯褌 褋邪屑褘泄 芯斜褗械泻褌 泻芯薪褌褉芯谢邪. 效械褉械蟹 薪械谐芯 胁褘 屑芯卸械褌械 锌芯谢褍褔懈褌褜 写芯褋褌褍锌 泻 谢褞斜褘屑 蟹薪邪褔械薪懈褟屑 蟹邪褉械谐懈褋褌褉懈褉芯胁邪薪薪褘褏 褎芯褉屑, 锌芯谢褜蟹芯胁邪褌褜褋褟 懈褏 API, 胁褘蟹胁邪褌褜 胁邪谢懈写邪褑懈褞 胁褋械褏 褎芯褉屑, 锌芯谢褍褔懈褌褜 蟹薪邪褔械薪懈褟 胁褋械褏 褎芯褉屑.
袩褉懈屑械褉 锌褉芯褋褌芯谐芯 懈褋锌芯谢褜蟹芯胁邪薪懈褟 屑懈泻褉芯褎芯褉屑
import React from 'react';
import { useMicroform } from '@alfa-bank/corp-ao-microforms';
import { Field } from 'formik';
function SimpleFunctionalComponent() {
const { MicroformContext, Microform, microformsControl } = useMicroform();
return (
<div>
<h1>袩褉懈屑械褉 懈褋锌芯谢褜蟹芯胁邪薪懈褟 袦懈泻褉芯褎芯褉屑</h1>
<MicroformContext>
<Microform
name="websites"
options={ { // options - 褝褌芯 胁褋械 薪邪褔邪谢褜薪褘械 锌褉芯锌褋褘 泻芯褌芯褉褘械 芯斜褘褔薪芯 锌械褉械写邪褞褌褋褟 胁 Formik
initialValues: {
name: '',
email: '',
},
onSubmit: () => {},
} }
>
{
(formikProps) => { // formikProps - API 褌械泻褍褖械泄 褎芯褉屑褘 - 芯斜褘褔薪褘械 formik 锌褉芯锌褋褘
return (
<>
<Field type="text" name="name" placeholder="Name" />
<Field type="email" name="email" placeholder="Email" />
</>
);
}
}
</Microform>
</MicroformContext>
<button onClick={ () => { alert(JSON.stringify( microformsControl.getAllValues() )) } }>
袙褘胁械褋褌懈 蟹薪邪褔械薪懈褟 胁褋械褏 屑懈泻褉芯褎芯褉屑
</button>
</div>
)
}小芯芯褌胁械褌褋褌胁械薪薪芯, 胁褘 屑芯卸械褌械 芯斜褗褟胁谢褟褌褜 褋泻芯谢褜泻芯 褍谐芯写薪芯 Microform, 胁褘 屑芯卸械褌械 写邪卸械 胁泻谢邪写褘胁邪褌褜 懈褏 写褉褍谐 胁 写褉褍谐邪, 胁 谢褞斜芯屑 褋谢褍褔邪械 胁褋械 屑懈泻褉芯褎芯褉屑褘 斜褍写褍褌 蟹邪褉械谐懈褋褌褉懈褉芯胁邪薪褘 薪邪 芯斜褗械泻褌械 泻芯薪褌褉芯谢邪 microformsControl 锌芯写 褋胁芯懈屑懈 懈屑械薪邪屑懈.
