function ControlledAccordionExample() {
const [accordionState, setAccordionState] = useState({
1: true,
2: false,
});
const handleExpand = (itemIndex) => () => {
setAccordionState((state) => ({ ...state, [itemIndex]: true }));
};
const handleCollapse = (itemIndex) => () => {
setAccordionState((state) => ({ ...state, [itemIndex]: false }));
};
return (
<Accordion>
<Accordion.Item
title="Item 1"
isExpanded={accordionState[1]}
onExpand={handleExpand(1)}
onCollapse={handleCollapse(1)}
>
<Text>Content for item 1</Text>
</Accordion.Item>
<Accordion.Item
title="Item 2"
isExpanded={accordionState[2]}
onExpand={handleExpand(2)}
onCollapse={handleCollapse(2)}
>
<Text>Content for item 2</Text>
</Accordion.Item>
</Accordion>
);
}