zoaseo
To Infinity And Beyond
zoaseo
전체 방문자
오늘
어제
  • 분류 전체보기 (760)
    • 개발이 좋아서 (378)
      • SAP가 좋아서 (0)
      • Java가 좋아서 (42)
      • Spring이 좋아서 (50)
      • JPA가 좋아서 (0)
      • QueryDSL이 좋아서 (26)
      • Docker가 좋아서 (7)
      • Redis가 좋아서 (7)
      • AWS가 좋아서 (5)
      • CI/CD가 좋아서 (6)
      • Troubleshooting이 좋아서 (4)
      • Kotlin이 좋아서 (7)
      • SQL이 좋아서 (6)
      • HTTP가 좋아서 (21)
      • JavaScript가 좋아서 (30)
      • TypeScript가 좋아서 (6)
      • Vue가 좋아서 (21)
      • Flutter가 좋아서 (61)
      • React가 좋아서 (20)
      • Redux(React)가 좋아서 (2)
      • Angular가 좋아서 (22)
      • HTML이 좋아서 (9)
      • CSS가 좋아서 (15)
      • PHP가 좋아서 (9)
      • Illustrator가 좋아서 (2)
    • 노력이 좋아서 (169)
    • 결과물이 좋아서 (14)
    • 코딩연습이 좋아서 (168)
      • 이론이 좋아서 (62)
      • SQL이 좋아서 (90)
    • 유용한 사이트가 좋아서 (28)
    • Github (2)

인기 글

티스토리

hELLO · Designed By 정상우.
zoaseo

To Infinity And Beyond

개발이 좋아서/React가 좋아서

react - 복습

2022. 7. 4. 09:22

상태가 변경될 때 리렌더링된다

 

1. useState(초기값) => [ state, setState ]

* 상태값 관리

const newArr = useState(초기값)

const state = newArr[0]

const setState = newArr[1]

const [ state, setState ] = useState(초기값)

setState(변경된 값)

 

2. useReducer()

* 어떤 경우에 상태가 어떻게 업데이트될 건지 관리

useReducer(함수, 초기값) => [ state, 함수를 실행시키는 함수]

const [ state, dispatch ] = useReducer(reducer, initialstate)

dispatch({

    type: "DELETE_USER",

    id: 10,

})

const users = [

    {
        id: 1,

        name: "a",

        age: 30,

        active: false,

    },

    {},

]

function reducer(state, action){

    switch(action.type){

        case "USER_DELETE":

            return state.filter(list=> list.id !== action.id);

        case "USER_CREATE":

            return state;

        case "USER_TOGGLE":

            return state;

        default:

            return state;

    }    

}

'개발이 좋아서 > React가 좋아서' 카테고리의 다른 글

react - rest(Representational State Transfer)  (0) 2022.07.05
react - 파일 업로드 관리하기  (0) 2022.07.04
react - 데이터 연동  (0) 2022.07.01
react - Common JS  (0) 2022.06.30
react - 싱글페이지 애플리케이션(복습)(useState, useReducer, useContext)  (0) 2022.06.29

    티스토리툴바