Zoeeey
Stack flows in you
Zoeeey
  • 분류 전체보기 (155)
    • 💡 UXUI (4)
      • UXUI (2)
      • UI (2)
      • UX (0)
    • 🟨 JavaScript (66)
      • 개념 (42)
      • 정리 (2)
      • 문제풀기 (프로그래머스, 코딩애플) (15)
      • 응용하여 자동화or문제해결하기 (2)
      • 기타 (5)
    • ⚛️ React (49)
      • 개념 (27)
      • 개념(Redux) (3)
      • 정리 (4)
      • 문제풀기 (코딩애플: React) (15)
    • 📘 TypeScript (10)
      • 개념 (8)
      • 문제풀기 (코딩애플) (2)
    • 🌐 HTML,CSS (18)
      • 실무에서 자주 발생한 오류들 (10)
      • 뒤늦게 알아서 뼈아픈 유용한 CSS (6)
      • 기타 자주 쓰는 CSS (2)
    • 💻 CS (8)
      • CS (5)
      • 정규표현식 (2)
      • Git,Github (1)

태그

  • UXUI
  • 코딩애플
  • axios
  • state
  • Props
  • react
  • 삼항연산자
  • 오류
  • TypeScript
  • object
  • class
  • redux
  • CS
  • 프로그래머스
  • json
  • JavaScript
  • useEffect
  • CSS
  • array
  • Ajax
전체 방문자
오늘
어제
hELLO · Designed By 정상우.
Zoeeey

Stack flows in you

⚛️ React/문제풀기 (코딩애플: React)

React : 2초 뒤에 사라지는 alert 만들기 (useEffect, 숏서킷평가)

2023. 5. 23. 16:23

2초 뒤에 사라지는 alert 만들기

풀이 - 바닐라 js 버전

import { useEffect } from "react"

function Detail(props){
  useEffect(()=>{
    setTimeout(()=>{ document.querySelector('.alert-warning').style.display = 'none' },2000)
  });
  return (
    <div className="container">
      <div className="alert alert-warning">
        2초 이내 이벤트로 이동하세요
      </div>
    </div> 
  )
}

풀이 2 - react 스타일 버전

import { useEffect, useState } from "react"

function Detail(props){
  let [alert, setAlert] = useState(true);
  useEffect(()=>{setTimeout(()=>{ setAlert(false) },2000)});
  return (
    <div className="container">
      {alert && <Alert />}
    </div> 
  )
}
function Alert(){
  return (
    <div className="alert alert-warning">
          2초 이내 이벤트로 이동하세요
    </div>
  )
}

풀이 3 - react useEffect & cleanup function 버전

import { useEffect, useState } from "react"

function Detail(props){
  let [alert, setAlert] = useState(true);
  useEffect(()=>{
    let timer = setTimeout(()=>{ setAlert(false) },2000)
    return ()=>{ clearTimeout(timer) }
  }, []);
  return (
    <div className="container">
      {alert && <Alert />}
    </div> 
  )
}
function Alert(){
  return (
    <div className="alert alert-warning">
          2초 이내 이벤트로 이동하세요
    </div>
  )
}

출처 : 코딩애플 https://codingapple.com/

저작자표시 비영리 동일조건 (새창열림)

'⚛️ React > 문제풀기 (코딩애플: React)' 카테고리의 다른 글

React : 더보기 버튼 누르면 ajax axios로 상품 더 가져오기  (1) 2023.05.31
React : 숫자가 아닌 걸 치면 alert 뜨는 input 만들기  (0) 2023.05.26
React : 가나다정렬되어도 끄떡없는 상세페이지 불러오기 (useParams, find())  (1) 2023.05.22
React : 데이터 바인딩해서 컴포넌트로 뿌리기 (템플릿 리터럴 Template literal)  (0) 2023.05.18
React : input에 글 쓰면 게시글 추가하기 (onChange, 매개변수, trim, splice)  (0) 2023.05.11
    '⚛️ React/문제풀기 (코딩애플: React)' 카테고리의 다른 글
    • React : 더보기 버튼 누르면 ajax axios로 상품 더 가져오기
    • React : 숫자가 아닌 걸 치면 alert 뜨는 input 만들기
    • React : 가나다정렬되어도 끄떡없는 상세페이지 불러오기 (useParams, find())
    • React : 데이터 바인딩해서 컴포넌트로 뿌리기 (템플릿 리터럴 Template literal)
    Zoeeey
    Zoeeey
    길게 생각하고 짧게 그리기

    티스토리툴바