TIL 20211108 [항해99 54일차]

1185 단어 항해99항해99

클릭이벤트를 리덕스로 관리

// 리덕스
// actions
 export const isSuccess = createAction(IS_SUCCESS, (success) => ({ success }));

// reducer
const initialState = {
  isSuccess : false,
}
[IS_SUCCESS]: (state, action) =>
   produce(state, (draft) => {
   draft.isSuccess = action.payload.success;
 }),
 
 // types
 // 카드 추가하기 클릭 확인
 export const IS_SUCCESS = 'cards/IS_SUCCESS';
// 컴포넌트
import { isSuccess } from '../features/cards/actions';

 const handleClick = useSelector((state) => state.cards.isSuccess);

return (
    <TextBtn
            onClick={() => {
              dispatch(isSuccess(!handleClick));
            }}
          >
            + 카드 추가하기
          </TextBtn>
          )


오늘 알게된 새로운 사실이 많은데.. 먼저 뷰 데이터도 리덕스로 관리 할 수 있다는 점이다.
그리고 리듀서를 뜯어보다가 우연히 알게된 새로운 사실은... action.payload뒤에 actionCreater에서 보낸 파라미터 명이 붙어야한다...! 사실 너무 충격이었다😱 그동안 어제까지만해도 console.log 찍으면서 힘들게 맞는 데이터 찾았는데... 그래도 지금이라도 알아서 행복하다😂

좋은 웹페이지 즐겨찾기