渲染逻辑应该在哪里父母或孩子?

时间:2018-06-14 09:54:33

标签: reactjs

我有一个呈现评论的父组件。此组件的子项是删除注释组件。我只想在用户具有特定角色时呈现删除注释组件。

我的问题是这种逻辑应该在父母或孩子的哪个地方生活?

我的想法是哪个组件负责管理删除评论的权限?删除组件或由删除注释组成的组件是否负责。

我离开了必须知道删除注释权限的父组件,它只知道它是由删除组件组成的,但不是内部细节如何工作,所有逻辑都封装在删除中评论组件。

但我对这种方法有反馈,质疑为什么要渲染一个专门删除评论的组件,如果你不能删除评论。

代码段:

删除评论组件的逻辑如下:

  this.props.userGroups.includes(DELETE_COMMENTS) ? <a onClick={this.deleteComment(deleteComment)}>Remove comment</a> : null

并且父母只有:

     <DeleteComment />

没有检查用户是否可以删除评论的逻辑

或者应该更像是:

  this.props.userGroups.includes(DELETE_COMMENTS) ? <DeleteComment /> : null

0 个答案:

没有答案