참고
벨로퍼트와 함께하는 모던 리액트
Action
{
"type": "REMOVE",
"data": {
"id": 0
}
}
- state에 변화가 필요할 때, action을 발생시킨다.
- action은 type을 필수로 가지고있으며, 그 외의 데이터는 추가할 수 있다.
Action Creator
- function
export function addUser(data) {
return {
type: "ADD_USER",
data
}
}
- arrow function
export const addUser = data => {
return {
type: "ADD_USER",
data
}
}
- Action Creator는 파라미터를 받아와서 적절한 Action객체를 만드는 함수이다.
Reducer
function counter(state, action) {
switch (action.type) {
case 'INCREASE':
return state + 1
case 'DECREASE':
return state - 1
default:
return state;
}
}
- 현재 State와, Action을 파라미터로 받고, action을 참고하여 새로운 State를 반환한다.
store
- 하나의 애플리케이션 당 하나의 store를 만든다.
dispatch
- store 내장함수 중 하나이며, action을 발생시킨다.
- dispatch의 파라미터는 액션을 파라미터로 전달한다.
subscribe
- store의 내장함수 중 하나이며, 함수 형태의 값을 파라미터로 받아온다.
- action이 dispatch될 때마다, 전달받은 함수가 호출된다.