1

OverlayTrigger/Tooltip要素をデフォルトで非表示にする方法はありますか?例えば、 。 overlay={this.state.show ? <Tooltip>showing</Tooltip> : null}作品が、コンソールに警告をスロー:リアストブートストラップツールチップを隠す

小道具overlayOverlayTriggerに必要に応じてマークされますが、その値はnull

ですが、これは唯一の方法だろうか?

{!this.state.show ? {component} : 
<OverlayTrigger ...> 
    {component} 
</OverlayTrigger> 
} 
+0

コードにツールチップを追加しないでください。表示されません。 –

+0

中括弧をあまり早く閉じています。試してみてください: 'overlay = {this.state.show? :null} 'を示します。 – Chris

+0

@Chrisマイナーなタイプミス。修正されたバージョンはまだスローされます "プロオーバーレイは' OverlayTrigger'で必須とマークされていますが、その値は 'null'です" – Avery235

答えて

1

OverlayTriggerコンポーネントはoverlay小道具が渡されている必要があります。ツールチップが必要ない場合は、オーバーレイをトリガーすることも望ましくありません。したがって、this.state.showが偽であれば削除したいと考えています。

{this.state.show 
    ? <OverlayTrigger overlay={<Tooltip>showing</Tooltip>}> 
     <button>Click me!</button> 
    </OverlayTrigger> 
    : <button>Click me!</button> 
} 

編集:はい、あなたの更新のコードはそれを行うための方法だろう。