무료
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결처음 만난 리액트(React)
그대로 넣으면 map을 찾지 못한다는 오류가 나옵니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.이런 오류가 나오면서 따로 실행이 되지 않습니다
- 미해결처음 만난 리액트(React)
섹션2 리액트 가져오기에서 react@17 말고 18을 불러와도 상관없나요?
안녕하세요! 실습을 하던 도중 react@17 을 가지고 오는 것을 알게되었습니다! 현재 react@18도 나온 것 같은데 17로 실습하는게 나은지 18로도 해도 되는건지 여쭤보고 싶었습니다. 밑에 처럼 바꿔도 되는걸까요?<!-- 리액트 가져오기 --> <script src="https://unpkg.com/react@18/umd/react.development.js" crossorigin></script> <script src="https://unpkg.com/react-dom@18/umd/react-dom.development.js" crossorigin></script> <!-- 리액트 컴포넌트 가져오기 --> <script src="MyButton.js"></script>
- 미해결처음 만난 리액트(React)
챕터03 화면에 아무것도 안 나와요.
영상보고 코드 똑같이 작성했는데 화면에 아무것도 안 나와요.리액트 버전 18에서 17로 다운그레이드도 했는데 여전히 아무것도 안 나오네요.
- 해결됨처음 만난 리액트(React)
미니 블로그를 만들며 생긴 궁금증입니다.
지금은 그냥 전부 따라 치고 마지막에 실행해서 결과를 확인하는 방식이지만 실제로 리액트로 개발을 할 때는 css쪽은 직접 화면을 보면서 해야될텐데 만든 컴포넌트가 생각대로 구현이 되어있는지 확인을 하려면 App.js 파일에 직접 컴포넌트를 넣어서 확인해야 하나요?페이지 컴포넌트들 같은 경우 같은 css가 중복되는데 중복되는 코드를 하나로 관리하려면 어떻게 해야할까요?
- 미해결처음 만난 리액트(React)
npm install을 하면 취약점 문제가 뜹니다.
npm install --save styled-componentsup to date, audited 1782 packages in 5s117 packages are looking for funding run npm fund for details131 vulnerabilities (1 low, 104 moderate, 22 high, 4 critical)To address issues that do not require attention, run: npm audit fixTo address all issues (including breaking changes), run: npm audit fix --forceRun npm audit for details.라고 뜨면서 안되는데 어떻게 해결하나요..?ㅜ
- 미해결처음 만난 리액트(React)
리액트 공부를 하려는데 한 폴더에서 끝내고 싶어서
이렇게 폴더 하나에 몰아서 하려고 하는데 my-app에서 npx 명령어가 안먹더라구요 그래서 node.js다운로드 받았던 파일에 myapp을 생성했는데, 혹시 이렇게 진행하면 안좋으려나요...?
- 해결됨처음 만난 리액트(React)
컴포넌트 렌더링 과정이 궁금합니다.
안녕하세요 선생님 Char 7 실습 코드를 localhost:3000 포트에서 처음 랜더링 했을 때 그림과 같이 useEffect() 각각 2번씩 (총4번)호출되어 질문드립니다. 코드는 다음과 같습니다. 각각 1번씩 호출되지 않고 2번씩 호출되는 이유가 뭘까요.. ㅠ import React, {useState, useEffect} from "react"; import useCounter from "./useCounter"; const MAX_CAPACITY = 10; function Accommodate(props){ const [isFull, setIsFull] = useState(false); const [count, increaseCount, decreaseCount] = useCounter(0); useEffect(() => { console.log("============"); console.log("useEffect() is called."); console.log(`isFull : ${isFull}`); }); useEffect(() => { setIsFull(count >= MAX_CAPACITY); console.log(`Current count value: ${count}`); }, [count]); return ( <div style={{padding : 16}}> <p>{`총 ${count}명 수용했습니다.`}</p> <button onClick={increaseCount} disabled={isFull}> 입장 </button> <button onClick={decreaseCount}> 퇴장 </button> {isFull && <p style={{color: "red"}}>정원이 가득찼습니다.</p>} </div> ) } export default Accommodate;
- 미해결처음 만난 리액트(React)
Chapter_10 수업에서 했던 예시를 스스로 구현하고 싶은데 방법을 모르겠어요
const numbers = [1, 2, 3, 4, 5]; const listItems = numbers.map((a) => <li>{a}</li>); ReactDOM.render(<ul>{listItems}</ul>, document.getElementById('root'));이 예시를 강사님처럼 리액트로 만들고 싶은데 이때 index.js를 어떻게 해야하나요?#수업질문
- 미해결처음 만난 리액트(React)
내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다
기존 생성했던 npx create-react-app my-app 명령어로 생성했던 my-app 실제 경로로 들어가서 폴더 삭제하고npm uninstall -g create-react-appnpm install -g create-react-appnpx create-react-app my-app수행 시 C:\Program Files\nodejs>npx create-react-app my-appNeed to install the following packages:create-react-app@5.0.1Ok to proceed? (y) ynpm WARN deprecated tar@2.2.2: This version of tar is no longer supported, and will not receive security updates. Please upgrade asap.node:fs:1380 const result = binding.mkdir( ^Error: EPERM: operation not permitted, mkdir 'C:\Program Files\nodejs\my-app' at Object.mkdirSync (node:fs:1380:26) at module.exports.makeDirSync (C:\Users\김진구\AppData\Local\npm-cache\_npx\c67e74de0542c87c\node_modules\fs-extra\lib\mkdirs\make-dir.js:23:13) at createApp (C:\Users\김진구\AppData\Local\npm-cache\_npx\c67e74de0542c87c\node_modules\create-react-app\createReactApp.js:257:6) at C:\Users\김진구\AppData\Local\npm-cache\_npx\c67e74de0542c87c\node_modules\create-react-app\createReactApp.js:223:9 at process.processTicksAndRejections (node:internal/process/task_queues:95:5) { errno: -4048, code: 'EPERM', syscall: 'mkdir', path: 'C:\\Program Files\\nodejs\\my-app'}Node.js v20.11.0 에러가 발생합니다.어떻게 조치해야할까요 ??
- 미해결처음 만난 리액트(React)
시계를 잘 만들었는데 바뀌는 부분이 반짝거리지 않아요
시계가 정상적으로 작동하는데 강사님이 말씀해주시는 것 처럼 변경된 사항이 반짝이지 않아요
- 미해결처음 만난 리액트(React)
JSX 의 XSS 방지
안녕하세요 헷깔리는게 있어서 질문을 드립니다.JSX 사용시에 XSS 방지가 된다고 말씀해주셨는데JSX 문법 사용하지 않고 createElement 사용하더라도방지가 되는 것 아닌가요?+ 제가 생각했던 것은 JSX 가 내부적으로 createElement 를 호출하고 createElement 메소드 내에서 escape 가 일어나는 것 아닌가 했는데, chatGPT 한테 물어본 결과JSX 문법을 사용하면 createElement 를 호출 하기 전에 escape 을 완료하는 것으로 이해를 하였습니다.이렇게 이해하는 것이 맞을까요..?
- 미해결처음 만난 리액트(React)
chapter5 실습질문입니다.
이와같이 나오는데 어떤부분에서 잘못되었을까요? 두번세번봐도 어디가 잘못됬는지 모르겠네요 ㅠㅠ
- 미해결처음 만난 리액트(React)
오류가 뜹니다ㅜ
이거 왜 이런가요ㅜㅜnpm uninstall -g create-react-app 치면 저렇게 돼요ㅠㅠ
- 해결됨처음 만난 리액트(React)
[Card 컴포넌트 만들기 강의] 코드질문 있습니다!
강의 너무 잘 보고 배우고 있습니다!! 감사합니다 🙂 카드를 한장이 아니라 여러 장이 나오게 만들고 싶어서 혼자 코드를 수정해봤는데요 key 값이 없어서 오류가 난다고 하는데요 1-1.이 상태에서는 어떻게 key값을 넣어줘야 할까요?1-2. 다른 방법은 없을까요? import Card from "./Card"; const names = [ { id: 1, name: "학생 1", comment: "리액트 공부중입니다" }, { id:2, name: "학생 2", comment: "리액트 공부중임니댜" } ] function ProfileCard(props) { <div> {names.map((name) => { return ( <Card title={name.name} backgroundColor="#B57EDC" comment={name.comment} /> ) })}; </div> } export default ProfileCard;
- 미해결처음 만난 리액트(React)
실습 실행 오류가 뜹니다.
npm start를 해도 오류가 뜨고 실행이 안됩니다.제발 도와주세요ㅠㅠFailed to compile.Module not found: Error: Can't resolve '.reportWebVitals' in 'C:\Users\ujin2\my-app\my-app\src'ERROR in ./src/index.js 8:0-47Module not found: Error: Can't resolve '.reportWebVitals' in 'C:\Users\ujin2\my-app\my-app\src'ERROR in ./src/index.js 9:0-51Module not found: Error: Can't resolve './chapter_05/CommentList' in 'C:\Users\ujin2\my-app\my-app\src'webpack compiled with 2 errors
- 미해결처음 만난 리액트(React)
실행이 잘되었지만 그래서 오히려 납득이 안되는 부분이 있습니다.
안녕하세요 선생님. 좋은 강의 진심으로 감사드립니다. 실행이 잘 됩니다. 왜 잘 되지?하며 이해가 안되는 부분이 있어서 질문드립니다.Attendance.jsx 코드를 보면 함수 정의 후 Attendance함수만을 export 하고 있습니다. students 배열은 export되지 않고 있어 Attendance함수를 index.js에 불러가서 거기서 사용하면 거기는 students 배열은 불러가지 않았기 때문에 정의되지 않았다며 오류가 떠야할 것 같은 느낌이 들었는데 잘 실행이 되었습니다. 함수만을 export했는데 어떻게 students배열까지 index.js에서 잘 사용할 수 있는걸까요?그리고 간단한 추가질문이 하나 더 있습니다. 저번 강의에서 리스트의 키값을 지정해주지 않으면 리액트에서는 자동으로 인덱스를 키값으로 설정한다라는 말씀을 잠깐하셨습니다. 그런데 왜 키값을 지정해주지 않았을 때 오류가 뜨는걸까요?
- 미해결처음 만난 리액트(React)
오류
뭐가 문제일까요 똑같이 작성한 거 같은데 자꾸 빨간줄이 생겨요ㅜㅜ
- 미해결처음 만난 리액트(React)
Containment 질문 드립니다.
import { useState, useCallback } from "react"; import ThemeContext from "./ThemeContext"; import MainContent from "./MainContent"; function DarkOrLight(props) { const [theme, setTheme] = useState("light"); const toggleTheme = useCallback(() => { if (theme === "light") { setTheme("dark"); } else if (theme === "dark") { setTheme("light"); } }, [theme]); return ( <ThemeContext.Provider value={{ theme, toggleTheme }}> <MainContent /> </ThemeContext.Provider> ) } export default DarkOrLight;import React from "react"; const ThemeContext = React.createContext(); ThemeContext.displayName = "ThemeContext"; export default ThemeContext;MainContent가 ThemeContext의 하위 컴포넌트입니다.그러면 <ThemeContext.Provider> 안에 있는 <MainContent /> 컴포넌트는 ThemeContext.Provider 안의 props.children으로 간주될텐데 ThemeContext 에 {props.children}가 없어도 <MainContent />가 표시되는 이유가 궁금합니다. .privider메서드(메서드로 지칭하는게 맞나요...?ㅎ)를 사용하면 자동으로 하위 컴포넌트를 표시하는 기능(암묵적으로 {props.children}를 사용한다던지...)이 있는 건가요?
- 해결됨처음 만난 리액트(React)
Contex와 redux같은 전역 상태관리 라이브러리
Contex가 하위 컴포넌트들에서 해당 변수에 바로 접근이 가능하게 만들어주는 것은 이해가 되었습니다.하지만 한 가지 의문점이 있습니다.저의 짧은 지식으로는 redux같은 전역 상태 관리 라이브러리를 이용하면 모든 컴포넌트가 접근할 수 있는 store라는 공간이 생기는 것으로 알고 있습니다. 그래서 redux를 사용한다면 contex는 굳이 사용할 필요가 없는 것으로 생각됩니다. redux같은 전역 상태 관리 라이브러리를 이용할 때에도 context를 사용하는 경우가 있는지 궁금합니다. 그리고 이전 질문에서 엄밀히 말하면 context가 상태 관리는 아니라고 하셨는데 상태 관리와 context의 차이점을 잘 모르겠습니다.. 간략하게나마 차이점을 설명들을 수 있을까요?
- 해결됨처음 만난 리액트(React)
useRef가 잘 이해되지 않습니다.
useRef() Hook의 다음 코드에서 질문이 있습니다.useRef는 DOM에 접근하기 위해 사용하는 Hook으로 이해하면 될까요?예시 코드에서 <input type="text" ref={inputElem} />inputElem을 해당 input태그에 접근하기 위해 useRef를 사용하는 것이 맞나요?useRef() Hook이 데이터 변경을 감지하지 못해서 HTML 코드에 있는 ref의 변경을 감지할 수 있는 useCallback() Hook을 대신 사용하는게 맞나요?그럼 useCallback을 useRef를 대체하여 사용가능한 건가요?