리액트 ajax로 data받아서 state 변경 질문

리액트 ajax로 data받아서 state 변경 질문

QA

리액트 ajax로 data받아서 state 변경 질문

답변 1

본문

  let [nowurl,setnowurl] = useState(""); 

data를 최종으로 담을 state

 

 let url = document.querySelector(".url").value;

            function youtube_parser() {

              let regExp = /^.*((youtu.be\/)|(watch\?))\??v?=?([^#\&\?]*).*/;

              let match = url.match(regExp);

              return (match && match[4].length === 11) ? match[4] : false;

          }

데이터가 만들어지는 곳

 

setnowurl(youtube_parser())  // 데이터를 수정하는 절차 

 

이렇게하면 state가 변경되면서 값이 바껴야되는데 왜 state의 값이 변하지 않을까요..

setState에 함수는 못 넣나요..? 

 

setstate를 하지말고 그냥 array를 만들어서 push를 할까요..?

 

이게 웃긴게 첫번째만 그렇습니다 두번째부터는 정상적으로 작동해요,,,

이 질문에 댓글 쓰기 :

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 61,331
© SIRSOFT
현재 페이지 제일 처음으로