Как я могу передать item._id из выбранного элемента в вызов действия "getSubPanels"?«Подпанели» - раздел похож на «панели».Идея состоит в том, чтобы получить данные для дополнительной панели и затем открыть ее.
getSub = (event) => {
this.props.dispatch(getSubPanels(event.target.key));
}
render() {
const subpanels ...
const panels =
<Accordion.Accordion panels={
this.props.list.map((item) => {
return {
key: item._id, title: item.name, content: { content: subpanels }
}
})
} onTitleClick={this.getSub} />
let rootpanel = this.props.rootlist.map((root) => {
return {
key: root._id, title: root.name, content: { content: panels }
}
})
return (
<div className="ui one column stackable center aligned page grid">
<div className="column six wide">
<Accordion panels={rootpanel} defaultActiveIndex={0} styled />
</div>
</div>
)
Аккордеонная панель открывается сейчас, когда настраивается activeIndex вручную, но как я могу установить ее динамически?Кажется, что при отладке «this.index» имеет правильный индекс.
getSub = id => event => {
console.log(id);
if (this.state.activeIndex > -1) {
this.setState({ activeIndex: -1 });
} else {
this.props.dispatch(getSubPanels(id));
// this.setState({activeIndex:this.index}); //Doesn't work
this.setState({ activeIndex: 3 }); // Works
}
}