如果您有一个视图文件要在不同的页面(例如页面标题略有不同)中重复使用,那么以下三种方法中是否有“最佳方法”? (考虑关注点分离,业务/表示逻辑等)
例如,如果我有相同的“您的地址是什么”页面,但有许多不同的帐户类型,例如慈善帐户,个人帐户,企业帐户等,分别需要不同的页面标题。
(a)传递控制器中的特定页面标题
return h.view({ pageHeading: "What is the
charity's registered address?"})
return
h.view({ pageHeading: "What is your address?"})
<pageHeading>{{ pageHeading }}</pageHeading>
(b)在控制器中传递一个帐户类型标志,并在视图中具有一些条件逻辑来设置标题:
return h.view({ isCharityAccount: true })
return h.view({ isPersonalAccount: true })
<pageHeading> { if isCharityAccount } What is the
charity's registered address? { else if isPersonalAccount } What is
your address? { else … } </pageHeading>
(c)为每个页面使用单独的视图文件,尽可能抽象为常见的“部分”
还可能存在其他特定于帐户类型的页面元素,例如提示文本,验证错误消息。某些元素可能需要根据帐户类型显示/隐藏。