【发布时间】:2019-10-27 23:10:28
【问题描述】:
请考虑以下情况:
我创建了一个“baseUser”组件,它是一个包含三个字段用户名、密码和名称的表单。现在我想在三个不同的应用程序中使用此表单:Application1、Application2 和 Application3。
- 在 Application1 中,用户组件应该使用这个 baseUser 组件,但只需要来自 baseUser 状态的两个字段(用户名、密码),并且还应该有两个附加字段,即名字和姓氏。
- 在 Application2 和 Application3 中,User 组件应该与 baseUser 一样工作。
- 此外,所有操作、事件、状态都应该能够单独工作并且能够被覆盖。
render 方法也应该被覆盖,因为它们可以是不同应用程序的不同 UI。
我们如何使用 React 组件来实现这个功能?在使用“扩展”的应用程序中继承“baseUser”是否会导致任何问题(或者它是正确的做法)?
【问题讨论】:
-
您可以通过提供每个组件的特定需求,制作一个带参数的通用组件并将其呈现在 app1、app2 和 app3 中。例如,对于 app1,只需传递 uname、pwd 和 name,并且基于参数,公共组件将返回那么多字段。同样适用于每个 app2 和 app3 组件。
标签: reactjs react-redux react-component