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

home2 게시판 React 게시판 async 쓰면서 이해가 안되는게 있습니당~

async 쓰면서 이해가 안되는게 있습니당~

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

    오진희
    참가자

    제가 테스트로 다른 api  적용을 해보구 있는데,

    적용하다 궁금한점이 있습니다.

    api 데이터 불러올때 

    let mov_async = async () => {
            const {data : { data }} = await axios.get('url');
            console.log(data.movies);
            setjinmov(data.movies);
          }    

      useEffect( () => {
           mov_async();       
       }, [] );

    이렇게  mov_async함수를 먼저선언하고 useEffect() 함수안에서 mov_async()함수를 호출할때는 

    이렇게 콘솔에 데이터가 잡히는데,

    만약,

    useEffect() 함수안에서 바로 mov_async이 함수를 만들어서 실행하면  axios가 아예 되지가 않는거같습니당.

    이렇게 

    useEffect( () => {
           let mov_async = async () => {
            const {data : { data }} = await axios.get('url');
            console.log(data.movies);
            setjinmov(data.movies);
          }    
       }, [] );  

    그래서 왜 useEffect()안에서 저렇게 함수를 만들어서 실행하면 api데이터가 아예잡히지 않는건지궁금합니다~~???

    useEffect() 밖에서 함수 선언해서 useEffect 안에서 함수호출할 경우에는 api데이터가 잡히는것도 궁금합니당.....  애쁠샘 ~~수업내용이 아니라서 죄송하지만.....설명 한번만 해주시면 안될까욤??ㅠㅠ......

    실험으로 결과가 저렇게 나오는건 보이니까 그렇구나 그냥 넘어가겠는데... 왜안될까 너무궁금해서요 ㅠㅠㅠ

    제가 프로미스,async,await 공부하긴 했는데....한번씩 살짝 햇갈릴때가 있거든욤...

     

     

     

    #19972

    codingapple
    키 마스터

    함수를 만들기만 하고 사용을 안한 것이 아닐까요 

    #19973

    오진희
    참가자

    useEffect( () => {
           let mov_async = async () => {
            const {data : { data }} = await axios.get('url');
            console.log(data.movies);
            setjinmov(data.movies);
          }    
       }, [] );   만약 이렇게 코드를 쓰게 되면 컴포넌트가 로드됬을경우  저 mov_async 함수가 자동으로 실행되야하는게 아닌가욤???

    아니에요???...........

     

    #19981

    codingapple
    키 마스터

    function mov_async(){

    }

    이거랑 똑같은 함수정의부분일 뿐입니다

    mov_async() 함수를 사용해야 작동할듯요 

    #19989

    오진희
    참가자

    헛......ㄷㄷ  제가 지금까지 함수를 무의식적으로 잘못이해 하고 있었슴돠.....

    ....함수를정의하구 만드는순간 작동한다고 무의식적으로 그렇게 생각해서..... 대체왜....

    useEffect( )  안에서도  함수를만들면 당연히 자동실행 될꺼라고만 생각했네요.....ㄷㄷㄷ

    결론은..... 모든함수는 선언하면 호출을 해야 실행되는거죠?  

    참멍청했네요.......

    #20005

    codingapple
    키 마스터

    넴 이름불러줘야합니다 

    #20009

    오진희
    참가자

    큭...?? 감사합니당 애쁠샘~~!

7 글 보임 - 1 에서 7 까지 (총 7 중에서)
  • 답변은 로그인 후 가능합니다.

About

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

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

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