使用鼠标很容易使用React-Table(v6.6)隐藏/显示子组件。但是,例如,我想在提交表单后隐藏我的子组件。我发现这样做的唯一方法是管理扩展的组件,如下所示:
28/12/2017 0
25/12/2017
但是,当我这样做时,我遇到了一个新问题,即<ReactTable
data={data}
expanded={this.state.expandedNotes}
onExpandedChange={(newExpanded,index,event) => { this.setState({expandedNotes: newExpanded}) }}
/>
中的这些索引是页面特定的,而不是数据特定的。因此,当我更改页面或过滤器时,子组件X将保持打开状态,即使这不是原始的子组件。
似乎我可以通过添加控件来关闭所有事件的子组件来管理此问题:
expanded
但这似乎是举手之劳。是否有设置可以阻止子组件在这些更改下保持打开状态?
我尝试过:
<ReactTable
data={data}
expanded={this.state.expandedNotes}
onExpandedChange={(newExpanded,event) => { this.setState({expandedNotes: newExpanded}) }}
...
onPageChange: this.closeAll,onPageSizeChange: this.closeAll,onSortedChange: this.closeAll,onFilteredChange: this.closeAll,onResizedChange: this.closeAll,onExpandedChange: this.closeAll,/>
但是他们没有用。无论如何,这些都是默认设置。