온라인 강의/React 완벽 가이드 [Udemy]

106. "ErrorModal" 컴포넌트 추가하기

유호야 2023. 6. 6. 23:08
반응형

모달 창은 가져와서 써 본적은 있는데
직접 만들어보지는 못해서 강의를 보면서 해보려고 한다

 

이렇게 모달창까지 완료했다!

 

ErrorModal.js

import classes from "./ErrorModal.module.css";
import Card from "./Card";
import Button from "./Button";

const ErrorModal = (props) => {
  return <div>
    <div className={classes.backdrop} />
    <div className={classes.modals}>
      <Card>
        <header className={classes.header}>
          <h2>{props.title}</h2>
        </header>
        <div className={classes.content}>
          <p>{props.message}</p>
        </div>
        <footer className={classes.actions}>
          <Button>Okay</Button>
        </footer>
      </Card>
    </div>
  </div>
}

export default ErrorModal;

 

ErrorModal.module.css

.backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 10;
  background: rgba(0, 0, 0, 0.75);
}

.modals {
  position: fixed;
  top: 30vh;
  left: 10%;
  width: 80%;
  z-index: 100;
  overflow: hidden;
}

.header {
  background: #4f005f;
  padding: 1rem;
}

.header h2 {
  margin: 0;
  color: white;
}

.content {
  padding: 1rem;
}

.actions {
  padding: 1rem;
  display: flex;
  justify-content: flex-end;
}

@media (min-width: 768px) {
  .modal {
    left: calc(50% - 20rem);
    width: 40rem;
  }
}

 

 

반응형