2022. 12. 20. 00:39ㆍprograming/react
redux 공부한 내용 정리
- redux사용하면 컴포넌트들이 prps없이 state공유가능
설치
npm install @reduxjs/toolkit react-redux
-store.js 생성 및 문법
import { configureStore } from '@reduxjs/toolkit'
//state하나당 한세트
let user = createSlice({
name: 'user', //state명
initialState: 'kim' //state값
}) //userState같은거
//state가 array, object일때
let user2 = createSlice({
name: 'user2',
initialState: {
name: 'jhon',
age: 25
},
//수정을 위한 함
reducers: {
changeName(state) {
return {name: 'park', age:25}
return state.name = 'park' //array object는 이방법이 가능해서 문자하나도 {}에 담는경우가있음
},
increase(state, a) {
state.age += a.payload
}
}
})
//익스포트
export let {changeName, increase} = user.actions //state변경함수 남음
//state 등록
export default configureStore({
reducer: {
user: user.reducer
}
})
-index.js
<Provider store={store}></Provider>로 감싸준다
-각 컴포넌트에서 사용법
let a = useSelector((state)=>{ return state}) //모든 state
let a = useSelector((state)=> state.user) //특정state
-각 컴포넌트에서 변경함수 호출법
let dispatch = useDispatch();
dispatch(변경함수호출)
store.js 분할 할 시엔 빨간부분 따로 빼고 store.js 뺀부분 import해서 등록부분에 추가
'programing > react' 카테고리의 다른 글
[React]렌더링에 대한 고찰 (2) | 2023.01.19 |
---|---|
crbug/1173575, non-JS module files deprecated 해결 (0) | 2023.01.12 |
[cors]Cross-Origin Resource Sharing and Proxy (0) | 2023.01.12 |
[react-query]리액트 쿼리 개념 이해하기 (0) | 2022.12.28 |
[Node.js] - npm install, 이제는 알고 쓰자 (0) | 2022.11.21 |