中,并且给原生 form 元素添加 onSubmit 的处理:
import React, { CSSProperties, useState, useRef, FormEvent, ReactNode...从 context 中读取对应 name 的 values 的值,同步设置 value:
然后 React.cloneElement 复制 chilren,额外传入 value、onChange 等参数...:
onChange 回调里设置 value,并且修改 context 里的 values 的值:
这里的 getValueFromEvent 是根据表单项类型来获取 value:
然后是校验 rules...React, { ReactNode, CSSProperties, useState, useContext, ReactElement, useEffect, PropsWithChildren,...当然,我们也可以通过 ref 来做这个:
import React, { CSSProperties, useState, useRef, FormEvent, ReactNode, ForwardRefRenderFunction