从子组件访问父prop /属性

时间:2015-09-15 22:30:00

标签: javascript attributes reactjs components

我有一个看起来像下面代码的组件,我需要从SearchBox开始知道它的父级(SearchContainer)的值是否设置了withFilter属性。 / p>

如果SearchContainer有一种方法可以检测其中是否有SearchFilter组件,那么我可以更好地删除该属性,SearchBox也可以知道

<SearchContainer withFilter>
    <SearchFilter>Filter Orders</SearchFilter>
    <SearchBox/>
</SearchContainer>

1 个答案:

答案 0 :(得分:1)

作为一种设计方法,SearchContainer应该有一个道具,决定它是否显示SearchFilter

var hasFilter = true;
return (
  <SearchContainer withFilter={hasFilter}>
      {withFilter ? <SearchFilter>Filter Orders</SearchFilter> : null}
      <SearchBox withFilter={hasFilter} />
  </SearchContainer>
);

您应该在代码的this.props.withFilter render内使用SearchContainer