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

home2 게시판 React 게시판 onclick 질문

onclick 질문

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

    황승현
    참가자
    onClick={() => {
            if (누구차례냐 == 1 && 바둑판[props.i][props.j] == "black-border") {
              dispatch(바둑판변경([props.i, props.j, "black"])); //놓을 수 있는 자리 중 하나 누르면 검정색으로 변경
              dispatch(차례변경());
              for (var i = 0; i < 8; i++) {
                for (var j = 0; j < 8; j++) {
                  if (바둑판[i][j] == "black-border") {
                    dispatch(바둑판변경([i, j, ""])); //탐색된 자리(border) 삭제
                  }
                }
              }
            }
    바둑판 중 black-border인 4곳 중 한 곳을 누르면 black-border에서 black으로 바뀌고 나머지 black-border를 전부 ''로 바뀌게 만들었습니다. redux devtool로 보니까 black-border에서 black으로 바뀌었다가 ''로 바뀝니다. 조건문 if (바둑판[i][j] == "black-border")에서 바둑판[i][j]가 black이여도 바뀌는데 제가 모르는 자바스크립트 문법이 있는건지 여쭙고 싶습니다.
    
    #114486

    codingapple
    키 마스터
    바둑판변경 함수 안의 코드가 뭔가 이상한게 아닐까요 
    for 반복문 로직을 리덕스 안의 함수안에 구현해놔도 보기좋을듯요
    #114488

    황승현
    참가자
    let 바둑판 = createSlice({
      name: "바둑판",
      initialState: [
        [[0], [0], [0], [0], [0], [0], [0], [0]],
        [[0], [0], [0], [0], [0], [0], [0], [0]],
        [[0], [0], [0], [0], ["black-border"], [0], [0], [0]],
        [[0], [0], [0], ["black"], ["white"], ["black-border"], [0], [0]],
        [[0], [0], ["black-border"], ["white"], ["black"], [0], [0], [0]],
        [[0], [0], [0], ["black-border"], [0], [0], [0], [0]],
        [[0], [0], [0], [0], [0], [0], [0], [0]],
        [[0], [0], [0], [0], [0], [0], [0], [0]],
      ],
      reducers: {
        바둑판변경(state, action) {
          state[action.payload[0]][action.payload[1]] = action.payload[2];
        },
      },
    });
    
    바둑판, 바둑판변경함수입니다. 바둑판변경함수에서 배열은 그냥 이렇게 바꿔도 되는거 맞죠?
    #114489

    황승현
    참가자
    왜인지 모르겠는데 for문을 리덕스 안의 함수로 구현해놓으니까 문제가 해결됬습니다. 감사합니다.
4 글 보임 - 1 에서 4 까지 (총 4 중에서)
  • 답변은 로그인 후 가능합니다.

About

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

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

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