동균님 안녕하세요. 좋은 강의 공유해주셔서 감사합니다 :) 지금 페이지를 로컬에서 띄워보면서 페이지 분석을 하고 있는데요, Items 페이지의 보드들의 이미지가 깨져서 보입니다. 또한 보드 클릭시 이동하는 링크도 현재 존재하지 않아 리다이렉트되는 것 같습니다. Network탭을 확인해보니 이미지 파일에 대한 Response 가 500 으로 오고 있습니다. land-mfg.com 의 대대적인 홈페이지 개편이 있었던 걸까요..? 참고목적으로 스크린샷 공유드립니다 :)
안녕하세요! 좋은 강의 공유해주셔서 감사합니다. Part1 에 이어 Part2도 즐겁게 수강하고 있습니다 :) 다름이 아니라 3-2) 서비스탐색 및 코드 분석 강의 하단에 있는 소스코드의 링크가 문구와는 다르게 lecture-4 를 가리키고 있습니다. lecture-3로 변경이 필요할 것 같습니다. clone하고 나서 순간 좀 당황했네요 ㅎㅎ..
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 환경 세팅하고 yarn run client으로 "simple sns" 정상출력 확인 후 목록뷰 구현하기에서 코드 친 후 yarn run client하니 갑자기 빈페이지에 아래 오류가 뜨는데 구글링해도 방법을 잘 모르겠습니다ㅜ
이강의에서는 이전강의에서 layout shift 에 대한 처리를 해서 현재는 발생하지 않고있지만, 보통이라면 lazy loading 을 할때 layout shift 가 반드시 따라올것같은데 image lazy loading시에는 선작업으로 무조건 layout shift를 없애주어야하는것일까요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 먼저 좋은 강의감사합니다. 질문이있습니다. 보여주신 예제는 전부 동일한 이미지일때인데 각 이미지마다 사이즈가 다른 갤러리에서는 어떻게 적용하면 좋을까요 ? 예를들어 이런 사이트의 형식입니다. https://www.pinterest.com/seanbiehle/finterest/
10강 리엑트가 없다면 진행하던 도중 pure.html를 추가하여 해당 html을 확인하는 도중 마이크로소프트 엣지에서는 html이 확인되는데, 크롬에서는 확인이 되지 않습니다... 구글링했는데도 원인을 찾지 못해 질문 남깁니다 ㅠㅠ 를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
강의 7:01 부분의 16번쨰 코드내용에대한 질문입니다! 노드js는 처음이라서 우선 강의따라 흐름만 이해하면서 듣고있습니다! 16번쨰줄의 내용이 서버가 실행될때 forEach로 순회하면서 messagesRoute에서 정의한 메서드들을 실행하는 내용같은데, 작성된 문법이라면 현재 url외의 메서드들도 순회하면서 전부 실행 시키는 중인가요??
안녕하세요? page를 처음 렌더링하고 MsgItem의 수정을 클릭하여 startEdit을 실행하면 setEditingId(x.id)를 실행시키는데요. 바로 console.log(x.id)와 console.log(editingId)를 찍어보면 x.id는 잘 나오는데 editingId의 경우 처음 null 이 오고 계속 전값들이 찍혀서요(계속 클릭한 전 x값들이 editingID에 찍힘). setEditingId 함수로 editingID 값 변경까지 시간 딜레이가 있어서 일까요? 작동은 잘 합니다만, 공부하느라 console.log를 찍어보다 의문점이 들어서요!
강의에서는 es6 방식을 사용하지만, common js도 알아두어야 할 것 같아서, 혼자 common js를 사용해보던 도중 문제가 발생하여 질문 드립니다! 문제 요약: common js 방식으로 내보내기 한 후, 같은 경로 상의 다른 파일에서 require를 했을 때, 빈객체가 required됩니다. 세부사항 1. 상황 TicTacToe.jsx에서 CLICK_CELL이라는 상수를 내보내어, Td.jsx라는 동일 경로의 다른 파일에서 그 상수를 받아 오려 하는데, 빈 객체가 required 되어 CLICK_CELL의 값이 undefined로 나타납니다. 해당 상수는 Td.jsx가 아닌 다른 경로에 있는 파일에서는 정상적으로 required됩니다! 2. 코드 # 파일 구조 # TicTacToe.jsx # Td.jsx console.log 결과 3. 추측 common js를 통해 같은 경로 상의 파일에서 모듈을 받아오는 경우에 문제가 생기는 것 같습니다. 다만 정확히 어떤 문제인지, 또 어떻게 해결할 수 있는지 해결 방법을 끝내 찾지 못해 질문 드립니다. *깃헙 주소: https://github.com/Parkhanyoung/React-zerocho-basic 항상 좋은 강의 감사드립니다! 덕분에 정말 즐겁게 공부하고 있습니다 ㅎㅎ
무한스크롤 구현시 < div ref ={ fetchMoreEl } / > 이부분이 화면스크롤시 제대로 감지가 안되는 건지 useEffect 에서 intersecting 이 계속 false 더군요 제가 해결한 방법은 < div ref ={ fetchMoreEl } style ={{ border: ' 1px solid white ' }} ></ div > 이렇게 입력해서 정상작동하는 것을 확인했습니다. 비슷한 문제 발생시 참고용~
이렇게 적으면 v6에서 작동합니다. 앞에 분들이 여럿 글을 적어 주셨지만 정리된 게 없는 것 같아서 이렇게 올립니다. 공식문서에 나와있지만 영어가 어려우신 분들이나 처음 공부하시는 분들은 이거 참고 하시면 될 겁니다. 그리고 Link부분은 아직 안 나왔는데 적혀있어서, 오류떠서 주석 처리 했습니다. ```js import { BrowserRouter , Route , Routes , //Link } from "react-router-dom" ; import LandingPage from './components/views/LandingPage/LandingPage' import LoginPage from './components/views/LoginPage/LoginPage' import RegisterPage from './components/views/RegisterPage/RegisterPage' function App () { return ( < BrowserRouter > < Routes > < Route exact path = "/" element = { < LandingPage /> } /> < Route exact path = "/login" element = { < LoginPage /> } /> < Route exact path = "/register" element = { < RegisterPage /> } /> </ Routes > </ BrowserRouter > ); }
너무 기초적인 질문인 것 같아 걱정이지만 질문드립니다~! 1. jest와 @testing-library/jest-dom는 어떤 차이가 있고 각각의 역할이 궁금합니다. 2. @testing-library와 함께 사용하는 이유와 jest만 따로 사용하지는 않는 이유가 궁금합니다.
안녕하세요 제로초님 포트폴리오를 nextjs로 새로만들면서 작업중인데 라우트 이동 및 새로고침시에도 각 컴포넌트별 state를 유지하는 효율적인 방법을 좀 알고싶습니다. url : https://dv-node-portfolio.herokuapp.com/ git : https://github.com/dvisign/new-next-portfolio 전에 리액트로 할때는 useHistory를 이용한 커스텀 훅스 route state에 저장하였는데 nextjs에서는 사용할수가 없어서 useRouer로 저장이 가능한가 확인해보았는데 안되더라구요 그래서 다음으로 알아본것이 redux-persist 라이브러리였는데 리뉴얼된 강좌에서 ssr때문에 HYDRATE 액션때문에 사용은 해보지 않았고 리액트로 redux-persist 라이브러리를 사용했을때 로컬스토리지에 담는것같아 이용하지 않았습니다(개인적으로 localstorage를 신뢰하지 않는 개인적 성향때문에 그렇습니다.) 예를들어서 사이드 네비게이션이 열려있는것을 닫았다가 다른 라우트로 이동했을때 다시 열려있는 현상입니다. 스크린샷을 첨부합니다. 부단 이 부분 뿐만 아니라 나중에 더 만들다보면 이런 state유지 할것들이 더 많아질텐데 어떻게 유지 시키는것이 가장 효율적인 방법일까요?
React.memo 가 props 비교를 통해 리렌더링을 막아줄 수 있는 유용한 기능이라는 것을 알게되었는데요, 그렇다면 리액트에서는 왜 React.memo 적용을 모든 컴포넌트에 default로 제공하지 않는지 궁금합니다. 제가 구글링을 해본 결과 2년 전에 Dan Abramov가 트위터에 이런 글을 올렸더라구요.. ``` Ask yourself: Why don’t you put Lodash memoize() around every function? Wouldn’t that make all functions faster? Do we need a benchmark for this? Why not? ``` 저는 React.memo가 특정 컴포넌트의 이전 상태의 props를 기억하고 있다가 새로 렌더되어야할 상황에 전달된 props와의 비교를 통해 선택적으로 렌더링을 결정하는것이라고 생각했는데, 저 트위터를 보면 마치 React.memo가 컴포넌트 전체를 메모리 어딘가에 기억해야하고 이 작업이 오히려 성능에 악영향을 줄 수 있다는 뉘앙스로 들렸습니다. 횡설수설 서론이 길어진 것 같아서 죄송합니다. React.memo를 왜 모든 컴포넌트에 적용하면 안좋은지 궁금합니다!
http를 공부하다보니까 https에 대해서 찾아보게되었는데요. 저희가 지금 사용하는것은 https인데, 제가 찾아본 결과 보안장치가 더 추가됐다고 하더라구요. 그러면 https도 지금 이제까지 말씀해주신 http의 특징들을 다 가지고있는거 포함 이면서, TCP/IP프로토콜에서 Application 에서 아래층 Transport로 내려가면서 HTTP 에다가 +SSL이라는 보안장치를 가진 정보를 주고 HTTPS가 돼서 전송되는 거라고 생각합니다. 즉, HTTP의 기본 프로토콜에다가+ SSL이 추가돼서 HTTPs가 되는거라고 생각하는데 , 그럼 이와 같은 원리로 원래 HTTP/1.1라는 대부분에 들어있는 스펙이 있는데 이후 업그레이드된 HTTP/2, HTTP/3 버전의 경우 또한 기존HTTP를 바탕으로 전송되면서 2 혹은 3로 변경이 되는건가요? 아니면 기존의 HTTP/1.1프로토콜이 아닌 HTTP/3의 경우는 UDP이므로 커스터마이징해서 보내지는건가요? 왜냐하면 이전 영상에서는 개발자도구 열어서 프로토콜을 보게되면 HTTP/1.1이 보였는데, 현재는 구글도그렇고 네이버도 그렇고 HTTP/1.1은없고, HTTP/2와 HTTP/3밖에 안보입니다.