默认情况下,有没有办法隐藏OverlayTrigger
/ Tooltip
元素?
例如。 overlay={this.state.show ? <Tooltip>showing</Tooltip> : null}
有效但在控制台上发出警告:
道具
overlay
在OverlayTrigger
标记为必需,但其值为null
这是唯一的方法吗?
{!this.state.show ? {component} :
<OverlayTrigger ...>
{component}
</OverlayTrigger>
}
答案 0 :(得分:1)
OverlayTrigger
组件必须通过overlay
道具。如果您不想要工具提示,则也不希望触发叠加。因此,如果this.state.show
是假的,您需要将其删除。
{this.state.show
? <OverlayTrigger overlay={<Tooltip>showing</Tooltip>}>
<button>Click me!</button>
</OverlayTrigger>
: <button>Click me!</button>
}
编辑:是的,更新中的代码就是这样做的。
答案 1 :(得分:1)
这对我有用,仅在布尔值为真时显示。
<OverlayTrigger
overlay={
boolean ? (
<Tooltip id={`tooltip`}>important message for user</Tooltip>
) : (
<span></span>
)
}
>
{children}
</OverlayTrigger>