下图显示了我们需要实现的模型,并且我将来回讨论如何组织我们的vue组件。此表单将用于创建用户,但也将用于编辑用户,编辑我的个人资料以及在创建公司(业务请求)时创建初始用户。 事情是在不同的场景中,我们需要显示/隐藏或禁用表单的某些部分(例如,当用户编辑他的个人资料时,他无法更改他的角色或他的电子邮件(业务要求),当编辑用户电子邮件和密码时不能改变,等等。)。
我们所做的(但由于某种原因,它有点腥)是我们将此表单分为6个组件(UserContactInfo,UserProfileImage,UserGeneralInformation,UserSecurity,UserAccountOptions,UserRoles),我们有4个容器组件来托管这些组件(创建)用户,编辑用户,编辑我的个人资料,创建公司用户)。 这些小组件中的每一个(UserContactInfo,UserGeneralInformation ...)负责更新vuex中的用户对象的部分(因此UserContactInfo将更新FirstName,LastName,..等),我们需要将属性传递给每个表单,如果我们需要显示/隐藏或启用/禁用某些字段(电子邮件,显示名称等)。最后一部分我特别没有找到。
这是有意义的事情吗?这只是我的偏执狂,或者是否有更优雅的解决方案。
谢谢