- Store
- Action
- Reducer
- dispatch
{
type:'CHANGE_INPUT',
text: '안녕하세요',
}
{
type:'INCREASE',
}
const initialState = {
counter:1
}
function reducer(state=initialState,action){
switch(action.type){
case 'INCREMENT':
return {
counter: state.counter +1
};
default:
return state;
}
예 ) 아이디/비밀번호를 사용자가 로그인 하여 버튼을 클릭 했을때
0. action을 만든다. login함수를 만들어 , 아이디 비밀번호 값을 받고 액션타입을 지정해준다.
function login(username, password) { return { type: 'LOGIN', payload: { username: username, password: password } }; }
1.버튼의 onClick 함수에 아이디/비밀번호 값을 action 으로 감싸 dispatch로 action을 보낸다
const action = login(username, password); dispatch(action);
2. dispatch로 보낸 action은 reducer가 받는다. 이때 reducer는 초기값의 state와 action 이 파라미터다. reducer 에서는 action.type 에 맞춰 적절하게 코드가 실행된다.
맞나.... 틀린점 피드백 감사하겠습니다.