• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 React 게시판 Redux 5 : 장바구니 기능 만들기 숙제 & 응용문제

Redux 5 : 장바구니 기능 만들기 숙제 & 응용문제

3 글 보임 - 1 에서 3 까지 (총 3 중에서)
  • 글쓴이
  • #70283

    조승래
    참가자
    선생님. 안녕하세요!
    
    장바구니에 없으면 추가, 
    있으면 카운트를 올리는 응용문제를 해결해보려고 하는데요
    
    reducers 안에 함수들끼리 호출할 때는 뭔가 다른 방법이 있는 걸까요?
    어디서 보고 함수 호출시 앞에 this. 붙여봤지만 오히려 
    Uncaught TypeError: Cannot read properties of undefined (reading 'countUp')
    라는 문구만 나와서요...
    어떻게 해야하는 건지 찾아봐도 도저히 모르겠어서 질문 드립니다.
    
    reducers: {
            countUp(state, action) {
                console.log(action.payload)
                let findId = state.findIndex((e)=>{
                    return e.id===action.payload
                })
                state[findId].count++
            },
    
            addItem(state, action){
                // action.payload에 id가 기존 어레이에 존재하는지 검사
                // 값이 존재하지 않으면 배열에 추가
                //그렇지 않으면 countUp()
    
                var findItem = state.find(e=>e.id===action.payload.id)
                if(findItem==null){
                    console.log(findItem, '장바구니에 없음. 추가!')
                    state.push(action.payload)
                }
                else{
                    console.log('장바구니에 있었음. 수량 업')
                    console.log(action.payload.id)
                    countUp(action.payload.id)
                }
            }
    #70307

    codingapple
    키 마스터
    https://stackoverflow.com/questions/63564530/is-it-possible-to-call-a-reducer-function-from-another-reducer-function-within
    이러면 다른리듀서 부를 수 있다는군요
    #70329

    조승래
    참가자
    링크 타고 시도해봤는데 제가 틀린 거겠지만 잘 안되서 그냥 addItem 안에 count올리는 함수를 재작성 했습니다 ㅠ 답변 감사합니다.
3 글 보임 - 1 에서 3 까지 (총 3 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관, 개인정보처리방침
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠