TIL 45일차 Redux 마무리, HA 준비

shleecloud·2021년 9월 27일
0

Codestates

목록 보기
44/95

들어가며

관성이란게 정말 무섭다. 연휴가 끝나고 공부를 어느정도 했음에도 패턴이 쉽게 돌아오지 않는다. 오늘은 다시 시작하는게 많이 힘든 하루였다. 생활 패턴이 무너져서 그런가? 전날 일찍 자리에 누웠는데 새벽에 깼다가 잠이 안왔다. 그러다가 하루 밸런스가 무너지게 되고.

HA 준비한다고 공부를 열심히 했는데 딱 HA까지, HA만을 위해서 공부를 준비하게 되니까 공부의 신선도가 떨어졌다. 물론 시험은 통과할 수 있지만 장기적으로 봤을때 이게 맞는걸까? HA라는 시험의 압박감 때문에 목적을 잃어버린 기분이다. 그래도 어쩌겠어. 시험은 중요한걸? 일단은 HA를 끝낸다. 그 다음 목적을 확실히 해야겠다.

Redux 마무리로 페어를 진행했는데 HA 준비 때문에 새로운 것보다 HA대비 복습진행으로 마무리했다. 다들 비슷한 고민일까. 얼른 HA 끝내야지.

Pure Redux

Redux 순수 기능만 구현한 코드. 일반적으로 파일을 나눠놓는다. 이렇게 보니까 심플하네.

const { createStore } = require('redux');
const CHANGE_NAME = 'CHANGE_NAME';
const ADD_POST = 'ADD_POST';

//state
const initState = {
  name: '백지욱',
  posts: [],
};

//action
const changeName = (data) => {
  return {
    //action 객체
    type: CHANGE_NAME,
    payload: data,
  };
};
const addPost = (post) => {
  return {
    type: ADD_POST,
    payload: post,
  };
};

//reducer
const reducer = (prevState, action) => {
  switch (action.type) {
    case CHANGE_NAME:
      return {
        ...prevState,
        name: action.payload,
      };
    case ADD_POST:
      return {
        ...prevState,
        posts: [...prevState.posts, action.payload],
      };
    default:
      return prevState;
  }
};

//store
const store = createStore(reducer, initState);

console.log(store.getState());
store.dispatch(changeName('이창우'));
console.log(store.getState());
store.dispatch(addPost('2'));
store.dispatch(addPost('2'));
console.log(store.getState());
profile
블로그 옮겼습니다. https://shlee.cloud

0개의 댓글