首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >React Bootstrap Popover:初始化时预打开Popover

React Bootstrap Popover:初始化时预打开Popover
EN

Stack Overflow用户
提问于 2021-09-09 15:31:12
回答 1查看 74关注 0票数 0

如何预先打开(初始化为打开) React Bootstrap Popover?我有以下在初始关闭状态下工作的代码,

代码语言:javascript
复制
const popoverApproverNewAgreement = (
    <Popover id="popover-approverNewAgreement">
        <Popover.Title as="h3"></Popover.Title>
        <Popover.Content>
        Some text
        </Popover.Content>
    </Popover>
);

<OverlayTrigger trigger="click" rootClose placement="bottom" overlay={popoverApproverNewAgreement}>
    <a href="javascript:void(0)" className="more-info">
        <i className="fas fa-question-circle" aria-label="more information">
        </i>
    </a>
</OverlayTrigger>  
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-09 18:44:38

我不能让它在OverlayTrigger上工作,但成功地使用了更通用的Overlay,它接受一个show={..},这样你就可以用一个状态变量来显示/隐藏。

Overlay需要一个target ref,如下所示。

代码语言:javascript
复制
// Ref for Link or Button triggering overlay (required for <Overlay> usage)
const refLink = useRef(null); 

// State variable
const [overlayOpen, setOverlayOpen]  = useState(true); // Initially open

<a ref={refLink} href="javascript:void(0)" onClick={() => setOverlayOpen(!overlayOpen)}>
    <i className="fas fa-question-circle" aria-label="more information">
    </i>
</a>
<Overlay target={refLink.current} show={overlayOpen} 
         onHide={() => setOverlayOpen(false)} rootClose placement="bottom">
    {popoverApprover}
</Overlay>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69121013

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档