2024/07 119

리액트> 자식이 부모의 state 가져다쓰고 싶을 때는 props

안에 글제목 state 가 필요한데 저번에 만든 내부에 글제목 state를 집어넣고 싶으면 어떻게하죠? 예를 들면 이렇게 하면 될듯요   function App (){ let [글제목, 글제목변경] = useState(['남자코트 추천', '강남 우동맛집', '파이썬독학']); return ( )}function Modal(){ return ( { 글제목[0] } 날짜 상세내용 )}▲ 하지만 제대로 실행되지 않습니다.'글제목'이라는 변수가 define 되지 않았다고 에러가 뜹니다.왜냐면 글제목이라는 state 변수는 function App()에 있지 function Modal()에 없으니까요.자바스크립트에선 다른 함수에 있는 변..

리액트 2024.07.12

리액트>map : 많은 div들을 반복문으로 줄이고 싶을떄

자바스크립트 map 함수 쓰는 법  모든 array 자료 우측엔 map() 함수를 붙일 수 있습니다. 자바스크립트 기본함수 같은건데 용도를 알아봅시다.  설명하다 var 어레이 = [2,3,4];어레이.map(function(){ console.log(1)});기능 1. array에 들어있는 자료갯수만큼 그 안에 있는 코드를 반복실행해줍니다.저러면 진짜로 console.log(1) 3번 실행됨    설명하다 var 어레이 = [2,3,4];어레이.map(function(a){ console.log(a)});기능 2. 콜백함수에 파라미터 아무렇게나 작명하면그 파라미터는 어레이 안에 있던 모든 자료를 하나씩 출력해줍니다.(그냥 소괄호안에 있는 함수를 콜백함수라고 합니다)저러면 진짜로 2, 3, 4가 콘솔..

리액트 2024.07.12

리액트 환경에서 동적인 UI 만드는 법 (모달창만들기)

리액트에서 동적인 UI 만드는 step 동적인 UI가 뭐냐면 유저가 조작시 형태가 바뀌는모달창 탭 서브메뉴 툴팁 경고문 등 그런 UI들을 의미합니다.  1. html css로 미리 UI 디자인을 다 해놓고2. UI의 현재 상태를 state로 저장해두고3. state에 따라서 UI가 어떻게 보일지 조건문 등으로 작성이렇게 코드짜면 완성입니다.  그래서 글제목 누르면 전에 만들었던 이게 뿅 등장하는모달창 기능을 만들어봅시다.    step 1. html css로 미리 디자인해놓기  step 2. UI의 현재 상태를 state로 저장 state 하나 만들고거기에 현재 UI의 상태정보를 저장해두라는 소리입니다.  let [modal, setModal] = useState(false);저는 modal이라고 작명..

리액트 2024.07.12

리액트>omponent : 많은 div들을 한 단어로 줄이고 싶으면

오늘은 모달창처럼 뜨는 상세페이지를 한번 만들어보면서Component 문법을 알아봅시다.    상세페이지 겸 모달창 UI를 하나 만들어봅시다 일단 html css 레이아웃 디자인부터 해봅시다.설명하다  제목 날짜 상세내용설명하다 .modal{ margin-top : 20px; padding : 20px; background : #eee; text-align : left;}당연히 css 코드는 css 파일에 넣어야합니다. 모달창 겸 상세페이지 완성 끝     설명하다 return( )근데 html 코드짤 때 유의점이 있는데 return ( ) 안에 두개의 html 태그 나란히 적기 이런거 안됩니다. return ( ) 내부는 하나의 태그로 시작해서 하나의 태그로 끝나야합니다.   설명하다..

리액트 2024.07.11

리액트>state 수정

일단 글수정 버튼 만들기  설명하다 function App(){ let [글제목, 글제목변경] = useState( ['남자코트 추천', '강남 우동맛집', '파이썬 독학'] ); return ( { ??? } }> 수정버튼 )}대충 아무데나 버튼하나 만들고 이거 누르면 첫 글이 수정되는 기능을 만들어봅시다.저기 물음표안에 뭘 넣어야하죠?      설명하다 function App(){ let [글제목, 글제목변경] = useState( ['남자코트 추천', '강남 우동맛집', '파이썬 독학'] ); return ( { 글제목변경(['여자코트 추천', '강남 우동맛집', '파이썬 독학']) } }> 수정버튼 )}이러면 숙제 끝입니다. 버튼누..

리액트 2024.07.11

리액트>JSX 문법 1. html에 class 넣을 땐 className

JSX 문법 1. html에 class 넣을 땐 className 잘보면 평소에 짜던 html/css와 다른 부분이 있습니다.스타일을 주기 위한 class명을 넣을 때 class=" " 가 아니라 className=" " 이렇게 쓰는 부분이 좀 다른데 왜냐면 실은 App.js에 짜고 있는건 html이 아니라 JSX라고 부르는 이상한 언어라서 그렇습니다.   원래 리액트환경에서 하나 만들고 싶으면 자바스크립트로React.createElement('div', null) 이딴 식으로 어렵게 코드짜야합니다. 근데 그러면 유저들 다 도망가기 때문에 JSX라는 언어를 대신 사용합니다.JSX는 html과 사용방식은 비슷합니다.  근데 JSX는 일종의 자바스크립트라서 자바스크립트에서 사용하는 예약어인 class라는 키..

리액트 2024.07.11

리액트 다른 경로 설치에러 해결

방법 1: 시작 메뉴에서 관리자 권한으로 PowerShell 실행Windows 시작 메뉴를 엽니다."PowerShell"을 검색합니다.검색 결과에서 "Windows PowerShell"을 마우스 오른쪽 버튼으로 클릭합니다."관리자 권한으로 실행"을 선택합니다.방법 2: 파일 탐색기에서 PowerShell을 실행한 후 관리자 권한으로 승격파일 탐색기를 엽니다.D:\취학사\apple\리액트 폴더로 이동합니다.탐색기 상단 주소 표시줄에 powershell을 입력하고 Enter를 눌러 PowerShell을 엽니다.열린 PowerShell 창에서 다음 명령어를 입력하여 PowerShell을 관리자 권한으로 다시 실행합니다:sh코드 복사Start-Process powershell -Verb runAs이 명령어를 실..

리액트 2024.07.11

리액트>설치와 개발환경 셋팅

개발환경 셋팅 1. 구글에 Nodejs 검색해서 LTS라고 써있는 버전을 설치합시다. - 남자답게 숫자 높은 최신버전 써도 되는데 그로 인한 버그와 배포시 에러는 알아서 감수해야함- 설치 경로는 C드라이브 어쩌구 되어있는거 바꾸지말고 그대로 쓰는게 좋습니다.- 설치 중 chocolatey 어쩌구는 설치 안하셔도 됩니다. 2. Visual Studio Code 에디터도 구글에 검색해서 설치합니다.(기존 에디터 쓰셔도 되지만 터미널을 기존에 안다뤄본 분들은 필수) Q. 맥북은 다른가요? A. 다른거 없음    리액트 프로젝트 생성은    1. 작업용 폴더를 하나 만들어줍니다찾기좋게 바탕화면에 만드는게 어떨까요.     2. 폴더에 shift + 우클릭해서 여기서 powershell 열기를 누릅니다.맥북은 손..

리액트 2024.07.11

html>y축 돌아가는 애니메이션

▲ 오늘 만들어볼 간단한 애니메이션   transform을 쓰면 3D 스타일 회전이 가능합니다. transform : rotateX(180deg);transform : rotateY(180deg);transform : rotateZ(180deg);  각각 X,Y,Z축 회전이 가능합니다. X축은 가로줄입니다. 그래서 rotateX()는 가로줄을 축으로 회전이 들어갑니다.뭔소린지 모르겠으면 연필을 모니터에 가로로 대보십시오.그리고 그 연필을 돌돌 말아봅니다. 그게 X축 회전, rotateX() 입니다.아니면 직접 CSS로 박스나 글자를 rotateX() 줘보면 알 수 있습니다.  Y축은 세로줄입니다. 모니터에 연필을 세로로 놓고 돌돌 말면 그게 Y축 회전입니다. Z축은 여러분 얼굴과 모니터 간의 가상의 선을..

html 2024.07.11

html>간단한 Grid 레이아웃 만들기

간단한 Grid 레이아웃 만들기  Grid 레이아웃은 말그대로 격자를 만드는 레이아웃입니다.  설명하다  설명하다 .grid-container { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; grid-template-rows: 100px 100px 100px; grid-gap: 10px;} 부모에 display : grid를 주면 자식 들은 전부 격자처럼 진열됩니다. grid-template-columns는 격자의 열 너비와 갯수grid-template-rows는 격자의 행 높이와 갯수를 설정하는 속성입니다.fr이라는 단위는 몇배만큼 차지할지를 나타내는 값입니다.그런데 격자를 왜 만드냐고요? 격자..

html 2024.07.11