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

home2 게시판 React 게시판 span에서 onclick 사용간 함수 이용 관련 질문

span에서 onclick 사용간 함수 이용 관련 질문

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

    전민준
    참가자
    강의명 : "map : 많은 div들을 반복문으로 줄이고 싶은 충동이 들 때"
    위 강의 숙제 진행간 궁금한 사항이 있어 문의드립니다.
    아래 코드는 굵은색 표시 외에는 같은 코드입니다.
    첫번째 코드처럼 함수로 만들어서 실행하면 왜 안되고 두번째 코드로 작성하면 왜 실행이 정상적으로 되는지 이유가 궁금합니다.
    감사합니다.
    
    첫번째코드
    --------------
    
    /*eslint-disable*/
    import React, {useState} from 'react';
    import './App.css';
    function App() {
    let [글제목,글제목변경] = useState(['남자 코트 추천','강남 우동 맛집','KT 맛집']);
    let [따봉, 따봉변경] = useState([0,0,0,0,0,0]);
    function 변경(k){
    var copy = [...따봉];
    copy[k]=copy[k]+1;
    따봉변경(copy);
    }
    return (
    <div className="App">
    <div className='black-nav'>
    <h4>ReactBlog</h4>
    </div>
    {
     글제목.map(function(a,i){
    return(
    <div className='list' key={i}>
    {/* <h4>{a}</h4> */}
    <h4>{글제목[i]}<span onClick={변경(i)}>👍</span> {따봉[i]}</h4>
    <p>2월 17일 발행</p>
    <hr/>
    </div>
     )
    })
    }
    </div>
     );
    }
    export default App;
    -------------
    두번째 코드
    
    /*eslint-disable*/
    import React, {useState} from 'react';
    import './App.css';
    function App() {
    let [글제목,글제목변경] = useState(['남자 코트 추천','강남 우동 맛집','KT 맛집']);
    let [따봉, 따봉변경] = useState([0,0,0,0,0,0]);
    return (
    <div className="App">
    <div className='black-nav'>
    <h4>ReactBlog</h4>
    </div>
    {
     글제목.map(function(a,i){
    return(
    <div className='list' key={i}>
    {/* <h4>{a}</h4> */}
    <h4>{글제목[i]}<span onClick={()=>{
    let copy = [...따봉];
     copy[i]=copy[i]+1;
    따봉변경(copy);
    }}>👍</span> {따봉[i]}</h4>
    <p>2월 17일 발행</p>
    <hr/>
    </div>
     )
    })
    }
    </div>
     );
    }
    export default App;
    -------------
    
    
    #69086

    전민준
    참가자
    구글에 찾아보니
    <h4>{글제목[i]}<span onClick={()=>변경(i)}>👍</span> {따봉[i]}</h4>
    이런식으로 써야 한다고 하네요...
    
    질문해결됐습니다.
    감사합니다.
    #69111

    codingapple
    키 마스터
    onClick={()=>{ 여기에넣읍시다 }}
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 호 / 개인정보관리자 : 박종흠