7.6.2.56. useOverlay
useOverlay 후크는 웹 콘솔의 페이지 구조 외부에 있는 Cryostat에 직접 구성 요소를 삽입합니다. 이를 통해 구성 요소를 자유롭게 스타일링하고 CSS로 위치를 지정할 수 있습니다. 예를 들어 UI의 오른쪽 상단에 오버레이를 플로팅하려면 style={{ position: 'absolute', right: '2rem', top: '2rem', zIndex: 999 }}. useOverlay 를 여러 번 호출하여 여러 오버레이를 추가할 수 있습니다. CloseOverlay 함수는 오버레이 구성 요소로 전달됩니다. 이를 호출하면 useOverlay 와 함께 추가되었을 수 있는 다른 오버레이에 영향을 주지 않고 192.0.2.에서 구성 요소가 제거됩니다. 추가 전파를 useOverlay 로 전달할 수 있으며 오버레이 구성 요소로 전달됩니다.
예
const OverlayComponent = ({ closeOverlay, heading }) => {
return (
<div style={{ position: 'absolute', right: '2rem', top: '2rem', zIndex: 999 }}>
<h2>{heading}</h2>
<Button onClick={closeOverlay}>Close</Button>
</div>
);
};
const ModalComponent = ({ body, closeOverlay, title }) => (
<Modal isOpen onClose={closeOverlay}>
<ModalHeader title={title} />
<ModalBody>{body}</ModalBody>
</Modal>
);
const AppPage: React.FC = () => {
const launchOverlay = useOverlay();
const onClickOverlay = () => {
launchOverlay(OverlayComponent, { heading: 'Test overlay' });
};
const onClickModal = () => {
launchOverlay(ModalComponent, { body: 'Test modal', title: 'Overlay modal' });
};
return (
<Button onClick={onClickOverlay}>Launch an Overlay</Button>
<Button onClick={onClickModal}>Launch a Modal</Button>
)
}