// 현재 스토어의 상태 가져온다.
store.getState();

// 액션을 인자로 넣어서 store 상태를 변경시킨다.
store.dispatch(액션)
store.dispatch(액션생성자())

// 변경 사항을 구독한다. 변경이 일어날시 callback 함수를 실행시킨다.
// return 이 un 이다. 구독 해제
const unsubscribe = store.subscribe(()=>{});

// 다른 reducer 로 교채
store.replaceReducer(다른 리듀서)
import { createStore } from "redux";
import reducer from "./reducres/reducer";

const store = createStore(reducer);

export default store;
// 변경 사항을 구독한다. 변경이 일어날시 callback 함수를 실행시킨다.
const unsubscribe = store.subscribe(() => {
  console.log(store.getState());
});

// console.log(store);
store.dispatch(addTodo("coding"));
store.dispatch(addTodo("sleep"));
store.dispatch(addTodo("play"));

unsubscribe();

// 실제로 store는 변경 될 테지만 구독을 해제 해서 로그에 찍히지 않는다.
store.dispatch(addTodo("game"));
store.dispatch(addTodo("js"));
store.dispatch(addTodo("react"));