问下表单应该怎么做

#1

之前的Form组件,

<Form>
	    <div className='foo'>
    		<Input />
    		<Select />
    	</div>
	<Checkbox />
</Form>

这样用的,Input, Select之类的状态还有值都保存在Form中, 后面觉得不妥,因为Input props都是从context中获取的,其他地方要用就必须在Form中用
哪里要用Input, 就算只有一个都要这样用

<Form>
    	<Input />
    </Form>

现在就想在任意地方都可以用

<Foo>
	<Input />
</Foo>

这样的话之前的Input就得加多一个类似

<FormField>
	<Input ></Input>
</FormField>

formFieldcloneElement(Input, props)

但是这样的话每次render都会重新cloneElement,创建一个实例,感觉更不好了, 话说你们都是怎么做表单的,我这边业务里全是表单,最多的话一个表单都能上20,30个表单项
而且有些表单项是有关联的,所以要把所有表单值放在最外层,A表单项要是需要影响到B表单项就可以直接操作到数据了