如何在反应中扩展组件

时间:2017-08-02 09:39:40

标签: javascript forms reactjs jsx

让我们说我有一个表格X,它会渲染另外两个组件,这些组件有很多儿童组件,到现在为止还可以, 但是,如果我有另一种形式Y大多数它的逻辑与形式X相同,只有一些逻辑在子组件中是自定义的Y形式,处理这种情况的最佳做法是什么? 是通过jsx条件语句,通过传递一个道具来指示当前正在使用哪种形式? 或者通过继承组件并为每个表单应用自定义逻辑?

enter image description here 这里的关系如果我要创建一个OOP解决方案,但是getFirstComponent方法将有许多子组件,如果我想为大多数down组件添加自定义逻辑,我需要创建一个扩展原始组件的新组件类组件并覆盖render方法以添加我的自定义逻辑,或者传递一个标志来指示现在正在使用哪个表单并使用JSX条件来做出决定。

1 个答案:

答案 0 :(得分:0)

我建议尽可能使X成为通用的,可以在任何地方使用。您可以将X分为两部分(X1和X2),其中第一部分应该是最常见的(可以在任何地方使用)。所以你可以在X和X1中使用X1和X2,在Y中使用一些附加(其他逻辑)(= X1 +其他一些东西)。