묻고 답해요
167만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
id 태그 질문입니다.
안녕하세요 그랩님. 강좌 잘 듣고 있습니다. 제가 id값을 동일하게 지정해도 한 id값만 적용된다고 배웠는데, 실제로 해 보니 동일한 id값을 갖는 모든 텍스트가 색이 변했습니다. 이렇게 된다면 id와 class에 차이가 없는 것 아닌가요?? --------코드---------- <html> <head> <style type="text/css"> p { color: orange; } #id-test { color: skyblue; } .love { color: #BA68C8; font-size: 100; font-weight: 900; } .love2 { color: #00AAFF; font-size: 100; font-weight: 900; } </style> </head> <body> <p>Hello</p> <p>Hello!</p> <div id="id-test">id</div> <div id="id-test">id</div> <div class="love">class</div> <div class="love2">class</div> </body> </html>
-
해결됨따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
boiler_plate에 passport.js 적용 가능할까요?
안녕하세요 강사님의 강의를 완강하고 완성된 프로젝트를 입맛대로 가지고 놀면서 이런저런 기능을 복습도 하고(회원가입에서 핸드폰 번호 받는 기능을 혼자 완성하고 엄청 좋아라 했네요 ㅎㅎ )오류도 혼자 해결해보고 하면서 공부하고 있는 수강생입니다. 그런데 강사님의 유튜브 영상 댓글에서 다른 수강생분이 passport에 관한 질문을 하셨고 강사님이 그에 대해 "굉장히 편리하고 좋은 모듈이이며, sns인증 로그인 등을 매우 간편하게 구현하게 해준다 그런데 기초 강의에서까지 모듈로 로그인을 구현하는건 아닌것 같아서 가장 일반적으로 로그인을 구현하는 방식을 알려드렸다." 라는 내용으로 답변을 하신걸 읽은 기억이 있습니다. 시간이 좀 지나서 저런 내용이 맞았는지 확신은 없네요 ^^;; 제가 궁금한건 이제 저희가 만든 보일러 프로젝트에 sns로그인을 도입을 해보고 싶은데요 passport를 이용하는 방법과 그냥 도입하는건 아무래도 번거로움의 차이가 큰 것 같더라구요 이미 로컬 로그인 방식은 저희가 강의에서 구현을 했고 여기에 passport를 도입해서 sns로그인을 구현 해보고 싶은데 코드간에 충돌을 일으키거나 로그인/회원가입의 방식이 달라서 구현이 불가능하다거나 하는 문제는 없을까요? 혹은 제가 모르는, passport를 도입하는 방법을 알려주는 강사님의 다른 강의가 있을까요??
-
해결됨Slack 클론 코딩[실시간 채팅 with React]
InviteChannelModal 에 관해서 여쭤볼게 있습니다!
먼저 좋은 강의 감사드립니다 제로초님! 도움 많이 되고 있습니다. 여기서 위 그림과 같이 console을 찍어서 useParams를 통해 받아온 channel이 잘 들어오는지 확인을 하려했는데.. workspace는 잘 들어오는 반면 channel은 undefined로 나옵니다. 그래서 InviteChannelModal에서 SWR로 요청을 보낼 때 콘솔에 에러가 발생하구요!제 생각에는 아래 그림과 같이 '일반'으로 라고 콘솔에 떠야할 것 같은데.. 이유를 잘 모르겠습니다.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
TypeError: nextCallback is not a function (next-redux-wrapper 7.0)
next-redux-wrapper가 7.0.0 버전으로 업데이트되면서 수정사항이 생겼습니다. 에러 Server Error TypeError: nextCallback is not a function 해결 방법(변경사항) version 6.0.2 > const getServerSideProps = wrapper.getServerSideProps(async (context) => { context.store.dispatch(~~~); context.store.dispatch(END); await store.sagaTask.toPromise(); }); version 7.0.0 > const getServerSideProps = wrapper.getServerSideProps( (store) => async ({ req, res, ...etc }) => { store.dispatch(~~~); store.dispatch(END); await store.sagaTask.toPromise(); } ); 추가적으로 동적라우팅 (강의 : 다이나믹 라우팅) 할 때도 (req, res, ...etc) > (req, res, params, ...etc) 로 수정하시면 됩니다. next-redux-wrapper 참고 자료(getServerSideProps) (https://github.com/kirill-konshin/next-redux-wrapper#getserversideprops) 변경사항 (https://github.com/kirill-konshin/next-redux-wrapper#upgrade-from-6x-to-7x)
-
해결됨따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
vscode 터미널창에서 node 명령어 질문이 있습니다!
npm run start 해서 mongoDB connected.. 됐다고 뜨고 다시 그아래 뭔가 명령어를 칠만한게 작동이 안되더라구요. 따로 되는 방법이 있을까요..?
-
해결됨[React 1부] 만들고 비교하며 학습하는 React
handleChangeInput에서 handleReset함수를 return하는 이유가 궁금합니다.
handleChangeInput 함수에서 handleReset 함수를 실행하는 것은 이해가 되는데요. 왜 return 구문을 쓰신건지 잘 모르겠습니다 ^^;; handleChangeInput 함수 자체도 별도의 return을 해주는 것이 없는것 같아서요. handleChangeInput(e) { const searchKeyword = e.target.value; if (searchKeyword.length <= 0) { return this.handleReset(); // 이 부분 입니다! } this.setState({ searchKeyword }); }
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
포스트맨에서 아래와 같은 오류가 발생합니다.
구글링을 해봐도 모르겠네요 ㅠㅠ POST http://http:/localhost:5000/register Error: getaddrinfo ENOTFOUND http ▶Network ▶Request Headers Content-Type: text/plain User-Agent: PostmanRuntime/7.28.0 Accept: */* Cache-Control: no-cache Postman-Token: 08248e94-9645-4529-9d87-bb1278bcb7f8 Host: http: Accept-Encoding: gzip, deflate, br Connection: keep-alive ▶Request Body ▶POST http://http:/localhost:5000/register ▶POST http://http:/localhost:5000/register ▶POST http://localhost:5000/register ▶POST http://localhost:5000/register ▶
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
선생님 CRA를 통해 만들었을때 생긴 .git은 삭제하는게 맞을까요?
서버를 만들때 gitinit을 통하여 프로젝트를 관리하고있는데 CRA를 실행하면 내부에 또 하나의 .git이 생기는것은 어떻게 하는것이 좋을까요? 외부폴더에서 관리하고있느니 내부에있는 .git은 삭제하면 될까요?
-
미해결
질문 <div> react 화면 출력 질문입니다..
<div > <a href="www.naver.com"> <Icon as={IoLogoSnapchat} /> Chatbot </a> </div> 위 코드는 chatbot 글 혹은 icon을 클릭하면 기존 페이지에서 네이버 화면을 여는 코드 입니다. 제가 구현 하고 싶은 것은 기존 페이지 위에 작게 네이버 화면을 여는 것인데 어떻게 해야 할까요?
-
해결됨Slack 클론 코딩[실시간 채팅 with React]
SPA에서 e.preventDefault()를 사용해야하는 이유가 뭔가요?
https://developer.mozilla.org/ko/docs/Web/API/Event/preventDefault - 위의 링크에서 e.preventDefault() 함수가, 이벤트가 취소 가능한 경우 이벤트의 전파를 막지 않고 이벤트를 취소한다고 되어 있는데, 설명중에서 SPA에서 e.preventDefault() 사용해야한다고 하셨는데 이유가 궁금합니다.
-
미해결Slack 클론 코딩[실시간 채팅 with React]
socket.io-client typescript 모듈 에러 관련
현재 시점으로 npm i @types/socket.io-client하면 3.0.0 버전으로 설치가되어 2버전과 맞지 않아 에러가 나옵니다. 저 같은 경우는 제로초님의 깃헙에 올라와있는 json을 보고 1.4.35 버전으로 명시하여 설치하여 문제를 해결하였습니다. 혹시 문제 있으신 분 확인해보세요. npm i -D @types/socket.io-client@1.4.35
-
미해결실전 리액트 프로그래밍
react IE polyfill 관련해서 질문드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 d있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 강의들으면서 관련 프로젝트를 진행중입니다. IE 9 / IE 10 환경에서도 react가 흰화면이 아닌 정상적으로 나오도록 react-app-polyfill 모듈을 사용하여 polyfill 적용을 해보고있는데, IE11은까지는 확인을 했는데, IE 9 / IE 10 환경에서도 정상적으로 작동하도록 하려면 어떻게해야하는지 궁금합니다. IE 11 에 나오도록 작업한 방법은 index.js 파일에 import 'react-app-polyfill/ie11'; import 'react-app-polyfill/stable'; 를 추가 하였고, package.json 의 브라우저 리스트에 "e 11" 을 추가하면서 확인을 하였는데, IE 9 환경에서도 나오도록 확인하기위해 import 'react-app-polyfill/ie9'; import 'react-app-polyfill/stable'; 이렇게 index.js 파일에 추가하고 package.json 의 브라우저 리스트에 "e 9" 을 추가하면서 확인을 하였는데, 구문 에러가떠서 어떻게 해야할지 모르겠습니다. 모듈 캐시폴더도 지워보고 해봤는데, 어떤방법이 더있을까요? 구문 에러는 SCRIPT : 1002 구문에러가 뜹니다. (IE 9 / IE 10 환경에서)
-
미해결React & Express 를 이용한 웹 어플리케이션 개발하기
section 4까지 수강 후 프로젝트 완성 후 오류 질문
저의 프로젝트 화면 입니다. 여기서 김이라고 검색을 하고나서 김만두를 클릭을 하면 김만두에 대한 정보가 나오는게 아니라 관리자에 대한 정보가 나옵니다. 필터가 되면 데이터를 초기화 시키고 필터된 것만 데이터를 배열에 넣어서 다시 출력 하는 건가요? 일단 제가 테스트 했을 땐 키 값이 4에서 검색을 했을 때 0이 나온걸 보면 맞는거 같긴한데... 아!! 여기서 i가만 초기화가 되는구나... 이 값을 제가 바꾼다 따로 key라는 값을 만들어서 하면!! 되겠다!!! 감사합니다 이해 했습니다.
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 유튜브 사이트 만들기
안녕하세요 setState 실행 순서가 조금 이상해서 질문남겨요...
안녕하세요 양질의 수업을 무료로 오픈해주셔서 항상 공부 잘하고 있습니다. 이번에 클론 코딩 진행하면서 setState 부분이 조금 이상해서 질문 드려요 import React, { useEffect, useState } from 'react' import Axios from 'axios'; import { Row, Col, List, Avatar } from 'antd' function VideoDetailPage(props) { const videoId = props.match.params.videoId; const VideoVariable = { videoId: videoId }; const [Video, setVideo] = useState([]) useEffect(() => { Axios.post('/api/video/getVideo', VideoVariable) .then((res) => { if (res.data.success) { setVideo(res.data.video); console.log('state 업데이트 완료') } else { alert('비디오 정보 로딩 실패'); } }) }, []); if (Video.writer) { return ( <Row gutter={[16, 16]}> <Col lg={18} xs={24}> <div style={{ width: '100%', padding: '3rem 4em' }}> <video style={{ width: '100%' }} src={`http://localhost:5000/${Video.filePath}`} controls></video> <List.Item // actions={[<LikeDislikes video videoId={videoId} userId={localStorage.getItem('userId')} />, <Subscriber userTo={Video.writer._id} userFrom={localStorage.getItem('userId')} />]} > <List.Item.Meta avatar={<Avatar src={Video.writer && Video.writer.image} />} title={<a href="https://ant.design">{Video.title}</a>} description={Video.description} /> <div></div> </List.Item> {/* <Comments CommentLists={CommentLists} postId={Video._id} refreshFunction={updateComment} /> */} </div> </Col> <Col lg={6} xs={24}> side video {/* <SideVideo /> */} </Col> </Row> ) } else { console.log(Video, '후후') return <div> Loading... ?? </div> } } export default VideoDetailPage 이게 제 코드구요 실행하면 아래의 else 부분의 후후먼저 실행되고 위의 setVideo가 실행됩니다. 그래서 에러가 발생해 detail 페이지로 가지않고 다시 landing 페이지로 넘어옵니다 비동기 처리때문인가 싶어 setVideo를 콜백의 형태로 남겨서 동기처리 할수있다길래 해봐도 안되고, useEffect 아래 input 리스트에 Video를 넣어보기도 했는데 잘 안되네요 ㅠㅠ https://github.com/dnfwlxo11/mini_youtube 이게 제 풀 코드입니다. component 코드들이랑 index.js 코드랑 몇번이나 본지 모르겠어요 이유가 뭘까요?
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
Unexpected default export of anonymous function
아래와 같은 경고가 나타나서 질문드립니다. 선생님의 수업을 그대로 따라가고, 코드에도 오타가 없어 보이는데, React Hook를 활용하게 되면서 anonymous function을 쓰지 못해서, return또한 불가능해지고, 이것이 Auth & user_reducer.js에서 모두 나타나는 거 같은데, 무엇이 문제인지 도통모르겠습니다. 대부분의 것을 본인이 찾아서 해결해야하는 것이 개발자 강호의 도리인줄 알지만, 찾아도 답이 나오지 않아 질문 드립니다. 항상 감사드립니다. Compiled with warnings. [1] [1] src/_reducers/user_reducer.js [1] Line 7:1: Unexpected default export of anonymous function import/no-anonymous-default-export [1] Line 12:13: Unreachable code no-unreachable [1] Line 15:13: Unreachable code no-unreachable [1] Line 18:13: Unreachable code no-unreachable [1] [1] src/hoc/auth.js [1] Line 6:1: Unexpected default export of anonymous function import/no-anonymous-default-export [1] Line 33:12: React Hook useEffect has missing dependencies: 'dispatch' and 'props.history'. Either include them or remove the dependency array react-hooks/exhaustive-deps 혹시 몰라 깃허브 링크도 첨부드립니다. (https://github.com/jihyeonmun/Nodejs/tree/master/BoilerPlate/Code) P.s. 이 질문을 보시는 학생분들에게, 혹시나 도움이 되실까 싶어 마크다운 필기본도 공유드립니다. 설정 및 설치(https://github.com/jihyeonmun/Nodejs/tree/master/BoilerPlate/DownloadSetting) 세부 기능(https://github.com/jihyeonmun/Nodejs/tree/master/BoilerPlate/Functions) 리액트 부분(https://github.com/jihyeonmun/Nodejs/tree/master/BoilerPlate/React)
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 유튜브 사이트 만들기
첫 화면이 이상합니다.
./src/_reducers/user_reducer.js Line 11:13: Unreachable code no-unreachable Line 14:13: Unreachable code no-unreachable Line 17:13: Unreachable code no-unreachable ./src/hoc/auth.js Line 2:8: 'Axios' is defined but never used no-unused-vars Line 33:12: React Hook useEffect has missing dependencies: 'dispatch' and 'props.history'. Either include them or remove the dependency array react-hooks/exhaustive-deps ./src/components/views/LoginPage/LoginPage.js Line 2:8: 'Axios' is defined but never used no-unused-vars ./src/components/views/RegisterPage/RegisterPage.js Line 4:8: 'Axios' is defined but never used no-unused-vars ./src/App.js Line 6:3: 'Link' is defined but never used no-unused-vars Search for the keywords to learn more about each warning. To ignore, add // eslint-disable-next-line to the line before. [HPM] Error occurred while trying to proxy request /api/hello from localhost:3001 to http://localhost:5000 (ECONNREFUSED) (https://nodejs.org/api/errors.html#errors_common_system_errors) [HPM] Error occurred while trying to proxy request /api/users/auth from localhost:3001 to http://localhost:5000 (ECONNREFUSED) (https://nodejs.org/api/errors.html#errors_common_system_errors) 터미널에 이렇게 뜨면서 시작을 하고 시작페이지와 버튼만 출력됩니다.
-
해결됨따라하며 배우는 노드, 리액트 시리즈 - 유튜브 사이트 만들기
boilerplate 다운로드 및 npm install 시 에러
아직 root 폴더에서 npm install 하는 단계입니다. 에러를 구글링하다보니 windows-build-tools 를 설치해야한다고해서, 관리자권한으로 powershell 실행해서 잘 설치했는데 해결되지 않아서요..ㅠㅠ 어떻게 해야할지 알려주실 수 있을까요? ++ 에러메시지 아래 추천으로 npm config set python 을 실행해봤지만 해결되지 않았습니다. node-pre-gyp WARN Using needle for node-pre-gyp https download node-pre-gyp WARN Tried to download(404): https://github.com/kelektiv/node.bcrypt.js/releases/download/v3.0.8/bcrypt_lib-v3.0.8-node-v83-win32-x64-unknown.tar.gz node-pre-gyp WARN Pre-built binaries not found for bcrypt@3.0.8 and node@14.16.0 (node-v83 ABI, unknown) (falling back to source compile with node-gyp) gyp ERR! find Python gyp ERR! find Python Python is not set from command line or npm configuration gyp ERR! find Python Python is not set from environment variable PYTHON gyp ERR! find Python checking if "python" can be used gyp ERR! find Python - "python" is not in PATH or produced an error gyp ERR! find Python checking if "python2" can be used gyp ERR! find Python - "python2" is not in PATH or produced an error gyp ERR! find Python checking if "python3" can be used gyp ERR! find Python - "python3" is not in PATH or produced an error gyp ERR! find Python checking if the py launcher can be used to find Python 2 gyp ERR! find Python - "py.exe" is not in PATH or produced an error gyp ERR! find Python checking if Python is C:\Python27\python.exe gyp ERR! find Python - "C:\Python27\python.exe" could not be run gyp ERR! find Python checking if Python is C:\Python37\python.exe gyp ERR! find Python - "C:\Python37\python.exe" could not be run gyp ERR! find Python gyp ERR! find Python ********************************************************** gyp ERR! find Python You need to install the latest version of Python. gyp ERR! find Python Node-gyp should be able to find and use Python. If not, gyp ERR! find Python you can try one of the following options: gyp ERR! find Python - Use the switch --python="C:\Path\To\python.exe" gyp ERR! find Python (accepted by both node-gyp and npm) gyp ERR! find Python - Set the environment variable PYTHON gyp ERR! find Python - Set the npm configuration variable python: gyp ERR! find Python npm config set python "C:\Path\To\python.exe" gyp ERR! find Python For more information consult the documentation at: gyp ERR! find Python https://github.com/nodejs/node-gyp#installation gyp ERR! find Python ********************************************************** gyp ERR! find Python gyp ERR! configure error gyp ERR! stack Error: Could not find any Python installation to use gyp ERR! stack at PythonFinder.fail (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-python.js:307:47) gyp ERR! stack at PythonFinder.runChecks (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-python.js:136:21) gyp ERR! stack at PythonFinder.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-python.js:225:16) gyp ERR! stack at PythonFinder.execFileCallback (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-python.js:271:16) gyp ERR! stack at exithandler (child_process.js:315:5) gyp ERR! stack at ChildProcess.errorhandler (child_process.js:327:5) gyp ERR! stack at ChildProcess.emit (events.js:315:20) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12) gyp ERR! stack at onErrorNT (internal/child_process.js:465:16) gyp ERR! stack at processTicksAndRejections (internal/process/task_queues.js:80:21) gyp ERR! System Windows_NT 10.0.19042 gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "configure" "--fallback-to-build" "--module=C:\\김하영\\STUDY\\react\\react_study_2\\boilerplate-mern-stack-master\\node_modules\\bcrypt\\lib\\binding\\bcrypt_lib.node" "--module_name=bcrypt_lib" "--module_path=C:\\김하영\\STUDY\\react\\react_study_2\\boilerplate-mern-stack-master\\node_modules\\bcrypt\\lib\\binding" "--napi_version=7" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v83" gyp ERR! cwd C:\김하영\STUDY\react\react_study_2\boilerplate-mern-stack-master\node_modules\bcrypt gyp ERR! node -v v14.16.0 gyp ERR! node-gyp -v v5.1.0 gyp ERR! not ok node-pre-gyp ERR! build error node-pre-gyp ERR! stack Error: Failed to execute 'C:\Program Files\nodejs\node.exe C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js configure --fallback-to-build --module=C:\김하영\STUDY\react\react_study_2\boilerplate-mern-stack-master\node_modules\bcrypt\lib\binding\bcrypt_lib.node --module_name=bcrypt_lib --module_path=C:\김하영\STUDY\react\react_study_2\boilerplate-mern-stack-master\node_modules\bcrypt\lib\binding --napi_version=7 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v83' (1) node-pre-gyp ERR! stack at ChildProcess.<anonymous> (C:\김하영\STUDY\react\react_study_2\boilerplate-mern-stack-master\node_modules\node-pre-gyp\lib\util\compile.js:83:29) node-pre-gyp ERR! stack at ChildProcess.emit (events.js:315:20) node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:1048:16) node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:288:5) node-pre-gyp ERR! System Windows_NT 10.0.19042 node-pre-gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\김하영\\STUDY\\react\\react_study_2\\boilerplate-mern-stack-master\\node_modules\\node-pre-gyp\\bin\\node-pre-gyp" "install" "--fallback-to-build" node-pre-gyp ERR! cwd C:\김하영\STUDY\react\react_study_2\boilerplate-mern-stack-master\node_modules\bcrypt node-pre-gyp ERR! node -v v14.16.0 node-pre-gyp ERR! node-pre-gyp -v v0.14.0 node-pre-gyp ERR! not ok Failed to execute 'C:\Program Files\nodejs\node.exe C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js configure --fallback-to-build --module=C:\김하영\STUDY\react\react_study_2\boilerplate-mern-stack-master\node_modules\bcrypt\lib\binding\bcrypt_lib.node --module_name=bcrypt_lib --module_path=C:\김하 영\STUDY\react\react_study_2\boilerplate-mern-stack-master\node_modules\bcrypt\lib\binding --napi_version=7 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v83' (1) npm WARN react-redux@5.1.2 requires a peer of react@^0.14.0 || ^15.0.0-0 || ^16.0.0-0 but none is installed. You must install peer dependencies yourself. npm WARN react-redux@5.1.2 requires a peer of redux@^2.0.0 || ^3.0.0 || ^4.0.0-0 but none is installed. You must install peer dependencies yourself. npm WARN react-boiler-plate@1.0.0 No repository field. npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.12 (node_modules\fsevents): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.12: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"}) npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! bcrypt@3.0.8 install: `node-pre-gyp install --fallback-to-build` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the bcrypt@3.0.8 install script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\jerem\AppData\Roaming\npm-cache\_logs\2021-04-26T00_37_15_758Z-debug.log
-
미해결Slack 클론 코딩[실시간 채팅 with React]
dedupingInterval에 관련해서 질문드립니다!
제가 이 강의를 듣고 이해한게 맞는지 궁금해서 질문올립니다! dedupingInterval을 사용하지 않으면 swr이 재요청 하는 기준이 다른 텝을 갔다가 오는 경우 재요청을 보내게 되고 dedupingInterval 옵션을 추가하게 되면 그 시간안에는 탭을 갔다와도 재요청을 보내지 않고 캐시해서 그대로 데이터를 사용하다가 그 시간이 끝나면 다시 재요청을 보내는 것이 맞는지 궁금합니다!
-
해결됨비전공자를 위한 진짜 입문 올인원 개발 부트캠프
application 에러가 발생하는 이유가 뭘까요...
heroku에 서버 배포한 후 링크에 접속하면 application error라는 화면과 함께 heroku logs --tail라는 명령어를 사용해 에러내역을 확인할 수 있다는 설명이 나오는데요 명령어를 치면 아래와 같은 에러 로그가 나옵니다.. at=error code=H10 desc="App crashed" method=GET path="/" 여기저기 찾아보면서 package.json scripts에 heroku-postbuild 추가하기 package.json engine에 node와 npm 버전을 입력하기 heroku 빌드팩 변경하기 heroku restart하기 procfile 생성하여 web:node index.js 입력하기 이외에도 여러 방법을 다 시도해봐도 해결이 안되네요...
-
미해결Slack 클론 코딩[실시간 채팅 with React]
Login에서 mutate 대신 revalidate를 써야 하네요.
저번에 mutate를 이용해서 서버에서 가져오는 데이터를 바로 data에 집어 넣는 식으로 했었는데, 그걸 유지했더니 리다이렉트 할때 에러가 나는 군요. .then((response) => { mutate(response.data) }) 리다이렉트를 할 때 워크스페이스 페이지가 열림과 동시에 user를 가져와야 에러가 안 생기는데, mutate를 쓰면 워크스페이스 페이지가 열릴 때 서버에 요청을 안보내네요... 그래서 실습 코드 뒤져보다가 revalidate를 쓴 걸 보고 revalidate를 쓰도록 코드를 수정했더니 workspace 들어가자마자 user 요청을 보내네요. 아직 알쏭달쏭 합니다. swr은 로컬 스토리지를 쓸때 디버깅을 하기가 어려운 것 같아요.