1 回答
TA贡献1831条经验 获得超9个赞
我决定去掉 Form 组件,直接使用 FormGroupComponent 组件。通过这样做,我消除了使用其子道具的道具的需要,使代码更具可读性(虽然有点冗长)。以下是我所做的更改:
<FormGroupComponent>
<CheckboxAndPicker
checked={showTimeOne}
setCheckbox={setTimeOne}
>
<TimePicker
{...timePickerStyle}
/>
</CheckboxAndPicker>
<CheckboxAndPicker
checked={showTimeTwo}
setChecked={setTimeTwo}
>
<TimePicker
{...timePickerStyle}
/>
</CheckboxAndPicker>
</FormGroupComponent>
我认为这是对原始帖子中代码的改进,因为:
我们已经删除了对 Form 组件的需求。
我们已经消除了通过 Form 组件的子组件进行映射并在 Form 组件内获取 Form 组件的子组件的 props 的需要。
我们不再将实际 TimePicker 组件未使用的新道具附加到 TimePicker 组件。
在我看来,分解出 prop 的子项的用法使这段代码更加直接。因此我认为在父组件中调用子组件的 props 可能是一种反模式,因为它不必要地使代码复杂化。
添加回答
举报