0. 인트로
그래서 이번 포스팅에서는 모달리스의 개념과 모달리스를 구현해나가는 과정을 기록하고자 한다.
1. 개념
(1) Modal(모달)
- 모달은 대화상자(dialog)가 실행될 때 제어권을 독점하게 되어, 대화 상자가 종료되기 전까지는 기존 화면을 제어할 수 없는 방식을 뜻한다.
(2) Modeless(모달리스)
- 모달리스는 대화 상자(dialog)가 실행되더라도 기존 화면을 제어할 수 있는 방식을 뜻한다.
2. 찾아보기
MUI(Material UI)의 Modeless라는 컴포넌트는 따로 존재하지 않았다. 그래서 “mui modeless”라는 키워드를 검색하던 도중 stackoverflow에서 non modal dialog에 대한 질문이 있었다.
링크 : https://stackoverflow.com/questions/55733179/how-to-create-a-non-modal-dialog-in-material-ui
(1) customize Dialog
(2) use Popper
- 두번째 답변으로는 Dialog 컴포넌트는 Modal 컴포넌트를 기반으로 상속받은 것이므로, 메인 컨텐츠가 block되게 만들고 싶지 않으면 Dialog 대신 Popper을 쓰라고한다.
- MUI Popper : https://mui.com/material-ui/react-popper/
- 문서를 천천히 읽어보면서 요구 사항에 맞추기 위해서는 너무 많은 커스터마이징이 필요할 것 같다는 생각이 들었다.
(3) Wrapping with react-Draggable
참고자료