如果我使用formik,如何在嵌套对象中写入正确的值?
P粉410239819
P粉410239819 2023-08-17 16:26:31
0
1
388
<p>给定一个与表单对象中的字段名称匹配的字段数组,我试图编写一个嵌套值,但由于某种原因,formik不知道如何编写嵌套值,这仅适用于顶层的值</p> <p>我会在评论中留下codesandbox的链接</p> <pre class="brush:php;toolbar:false;">export default function App() { const form = useFormik({ initialValues: { name: "", login: "", about: { age: "", rank: "", car: { name: "", years: "" } } } }); const fields = [ { name: { title: "Your name", fields: {} }, login: { title: "Your login", fields: {} }, about: { title: "About", fields: { age: { title: "Your age", fields: {} }, rank: { title: "Your rank", fields: {} }, car: { title: "Your car", fields: { name: { title: "Car name", fields: {} }, years: { title: "Car years", fields: {} } } } } } } ]; const { values, handleChange } = form; console.log("VALUES", values); const itemsRender = (item, idx) =&gt; { const key = Object.keys(item).at(-1); return ( &lt;div key={idx}&gt; &lt;p&gt;{item[key]?.title}&lt;/p&gt; &lt;input name={key} value={values[key]} onChange={handleChange} placeholder={item[key].title} /&gt; {!isEmpty(item[key]?.fields) &amp;&amp; ( &lt;div style={{ marginLeft: 20 }}&gt; {Object.entries(item[key]?.fields).map(itemsRender)} &lt;/div&gt; )} &lt;/div&gt; ); }; return &lt;&gt;{fields.map(itemsRender)}&lt;/&gt;; }</pre>
P粉410239819
P粉410239819

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!