【发布时间】:2021-07-13 05:30:04
【问题描述】:
我正在使用 Reactstrap 打开和折叠多张卡片。一旦打开,它们就会保持打开状态,并且由于我计划使用更多它们(用于文章),这将是一团糟。一旦我点击一个按钮并打开一张卡片,我希望其他人关闭,所以一次只显示一张卡片。我怎样才能做到这一点?
const [isOpenInfo, setIsOpenInfo] = useState(false);
const toggleInfo = () => setIsOpenInfo(!isOpenInfo);
const [isOpenArticle1, setIsOpenArticle1] = useState(false);
const toggleArticle1 = () => setIsOpenArticle1(!isOpenArticle1);
const [isOpenArticle2, setIsOpenArticle2] = useState(false);
const toggleArticle2 = () => setIsOpenArticle2(!isOpenArticle2);
在我的菜单中,我有一个“更多信息”按钮,单击时会打开折叠文章列表,单击每个标题时会打开文章(但我只想一次打开一篇文章) .所以这就像崩溃中的崩溃......
<Button className="info-button" color="primary" onClick={toggleInfo}>
More Info
</Button>
<Collapse isOpen={isOpenInfo}>
<Card className="card">
<CardBody className="card-body">
<div className="section section-articles">
<div className="articles-buttons">
<Button
className="article2-button"
color="primary"
onClick={toggleArticle2}
>
<h3>Article 2</h3>
</Button>
<Button
className="article1-button"
color="primary"
onClick={toggleArticle1}
>
<h3>Article 1</h3>
</Button>
</div>
<Collapse isOpen={isOpenArticle2}>
<Card className="card">
<CardBody className="card-body">
<Article2 />
</CardBody>
</Card>
</Collapse>
<Collapse isOpen={isOpenArticle1}>
<Card className="card">
<CardBody className="card-body">
<Article1 />
</CardBody>
</Card>
</Collapse>
</div>
</CardBody>
</Card>
</Collapse>
【问题讨论】:
标签: javascript reactjs jsx reactstrap