묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
섹션 29 state 원리
const onChangeContents = (event) => { setContents(event.target.value); if (writer && title && contents) { setIsActive(true); } };리렌더링은 함수에 바뀐값이 있다면 함수가 끝난후에 리렌더링이 되고 그래서 함수가 끝나기 전에 위 코드처럼 참/거짓 검증을 하려고 하면 undefined 값이라 거짓이라 setActive 값은 리렌더링이 되지않고const onChangeContents = (event) => { setContents(event.target.value); if (writer && title && event.target.value) { setIsActive(true); } };위처럼 event.target.value로 바꾸면 참이라서 바로 리렌더링이 되어서 노란색으로 버튼이 활성화 되는건가요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
redux toolkit으로 thunk를 실행하는 방법이 궁금합니다
import { configureStore } from "@reduxjs/toolkit"; import { createWrapper } from "next-redux-wrapper"; import reducer from "../reducers"; import thunkMiddleware from "redux-thunk"; function getServerState() { return typeof document !== "undefined" ? JSON.parse(document.querySelector("#__NEXT_DATA__").textContent)?.props .pageProps.initialState : undefined; } const loggerMiddleware = ({ dispatch, getState }) => (next) => (action) => { console.log(action); return next(action); }; const serverState = getServerState(); console.log("serverState", serverState); const makeStore = () => { configureStore({ reducer, devTools: true, middleware: (getDefaultMiddleware) => getDefaultMiddleware({ thunk: { loggerMiddleware, }, }), preloadedState: serverState, // SSR }); }; export default createWrapper(makeStore);아런 코드에서 redux thunk를 실행하는 방법이 궁금합니다!
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
우와 12강 완료 했어요~~ ㅎㅎㅎ
우와 우와
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
passport와 인증 전략 & Custom decorator 수강 중 Unauthorized 문제가 발생했습니다.
포스트맨으로 정확히 헤더에 { Authorization: 토큰값 } 넣고 { "success": false, "timestamp": "2023-06-19T07:07:40.995Z", "path": "/cats", "statusCode": 401, "message": "Unauthorized"}으로 나와서 response를 콘솔로 찍어보니 authorization과 같이 a가 소문자로 변환되어 찍혔는데요, 혹시 이와 관련되서 토큰값을 제대로 못받는걸까요 ?혹시나해서 코드는 깃허브 참고해서 비교해봤는데 도저히 못찾겠어서 도움요청드립니다 ㅜ
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
맥북 터미널에서 node-v 입력시 나오는 오류
안녕하세요 그랩님!혹시 영상 4:56쯤 단계부터 오류가 떠 다른 분들의 질문과 그랩님 답변도 보고 이것저것 시도해 보았으나 해결이 안되어 질문드립니다ㅜㅜ 혹시 아래의 오류가 제가 지금 사용하는 맥북이 2017년 버전(10.13.1)으로 시스템 업그레이드를 한지 오래되었기 때문에 뜨는걸까요..? 맥에서 지원하는 최신 시스템 업그레이드를 하려면외장하드 구입 후 컴퓨터 내 백업을 준비 후에 OS 삭제>재설치>백업복원 까지 진행해야 하기에 하기 오류가 컴퓨터 백업과 OS 재설치 없이도 해결이 가능할지 혹시 아실까 하여 문의드립니다ㅜㅜ
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
ec2 도커 pgadmin 배포 에러
안녕하세요 aws ec2 배포중 docker-compose up 시 동일 에러가 계속 뜨는데 이유를 모르겠습니다ㅠㅠ...env 파일 따로 루트폴더에 생성해서 아이디 패스워드 작성해주었습니다오류메세지.envdocker-compose.yml
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
css 가운데 정렬
const ImgWrapper = styled.div` padding: 32px; text-align: center; & img { margin: 0 auto; max-height: 750px; } `;사진이 정확히 가운데에 정렬이 안돼서 padding을 봤는데 이상하게 padding 오른쪽이 있는데 오른쪽 padding이 짤려서출력이 됩니다 이유가 무었일까요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
eslint 규칙 적용 관련 질문입니다.
사진처럼 eslint js 파일에 rules 설정을 마쳤는데도 npx eslint .을 하면 여전히 문제가 100개 이상 발생하고 있습니다. 하지만 강의 내용에는 저 5개의 규칙만 적용해도 발생하는 문제가 없다고 뜹니다. 뭐가 문제인가요?빠른 수정 방식으로 새로운 규칙을 지정하는 등의 문제 해결은 가능하나 현재 강의 내용과 보여지는 에러가 달라서 질문 남깁니다. 빨간 줄이 쳐저 있는 부분은 import하는 부분과 코드 내부에서는 router 기능을 사용하는 곳에 표시됩니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
CSS 첫번째 피그마 과제 질문
제 한계네용... 1.텍스트입력칸을 어떻게 하면 밑줄만 가로로 쭉 나오게 할지 모르겠고2. 성별 선택하는 라디오"만" 중앙배치 시키고싶은데 아직 해결이 안되고3.모든 요소들사이에 공간을 만들어주는게 아닌 가입버튼과 이용약관, 성별 선택라디오이렇게 세가지 요소만 공간을 만들고 요소를 선택해서 배치를 자유자재로 하고싶은데어렵네요 ㅠ
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
1강 Nodejs, npm, yarn 이해 - 프로젝트 설치 중 컴퓨터 튕김현상
학습자료를 보고 수업프로젝트 설치목록 class와 freeboard_frontend를 설치하고 있는데, 어떨때는 설치가 잘 되는데 어떨때는 설치도중에 컴퓨터 전원이 꺼져버리네요. 왜 어쩔때는 설치도중에 컴퓨터 전원이 꺼지는 건가요?
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
useSWR 자동완성 질문
안녕하세요! 강의 잘 보고있습니다섹션 8에 유저페이지 생성하기 부분을 진행 하던 중 useSWR을 입력 시 툴팁으로 useSWR에 대한 추론이 나오시는데 저는 나오지를 않습니다ㅠㅠ.. useSWRConfig 말고는 나오지 않는데 이유가 무엇일까요?라이브러리는 제대로 설치가 되었습니다..!
-
미해결한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
제가 생각하는 일기 분석 시작이 2번 되는 호출되는 이유가 맞는지 궁금합니다
const getData = async () => { const res = await fetch( "https://jsonplaceholder.typicode.com/comments" ).then((res) => res.json()); const initData = res.slice(0, 20).map((it) => { return { author: it.email, content: it.body, emotion: Math.floor(Math.random() * 5) + 1, created_date: new Date().getTime(), id: dataId.current++, }; }); setData(initData); }; useEffect(() => { getData(); }, []); const getDiaryAnalysis = useMemo(() => { console.log("일기분석"); | 처음 App 컴포넌트 실행이 되었을 때 useEffect를 통해 getData는 데이터를 불러오고 있는 상태이고(비동기가 맞을까요?) getDiaryAnalysis가 실행되면서 처음 "일기분석" 실행되고getData에서 데이터를 불러 온 상태가 되면 useEffect가 mount되면서 App컴포넌트가 한번 더 실행되는게 맞을까요?
-
미해결WEB2 - Node.js
질문
강의다 따라했고 강의에서는 리로드 하면 페이지가 바로 바뀐게 반영되는데 저는 pm2 stop main.js -> pm2 start main.js를 해야 반영이되는데 뭐가 문제일까요..?
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
도커를 이용한 Postgres 실행 강의 폴더가 안생겨요
똑같이 했는데요 docker-compose up data폴더안에 안생겨요
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
섹션 23 프로그램 세팅 관련 질의
안녕하세요? 프로그램 설치 관련 한번 더 질의 드립니다. 질의 답변 및 노션의 디렉션대로 진행하던 중 어떤 문제가 발생한 듯도 했지만 설치는 진행이 되었습니다. npx create-next-app을 설치한 한 class 폴더 내 다른 폴더들 확인한 결과, 아래와 같이 pages 폴더는 설치가 되지 않았고, node.modules에서는 노션에 나온 대로 버전 변경하려 했으나 이미 변경된 상태였습니다. 시간이 지나 업데이트 등의 이유로 설치 항목이 변경되어 위와 같은 것인지, 혹은 제가 무언가 실수를 한 것인지 궁금하여 질의 드립니다. 위와 같이 설치된 상태에서도 수업 진행에 차질이 없을지요?
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 챗봇 사이트 만들기
Dialogflow ES에서 서비스 어카운트에 dialogflow client api설정 하는 법 질문
3강, 정확하게는 2번째 강의에 질문있습니다.현재 Dialogflow ES로 실습중인데.. 서비스 어카운트를 만든 후, 서비스 어카운트에 dialogflow client api설정하는 부분이 안됩니다..정확하게는 강의에서 나오는 Dialogflow의 버전이 달라서 설정하는 법을 쉽게 못찾고 있는데... Dialogflow ES에서 서비스 어카운트에 dialogflow client api설정하려면 어떻게 해야 하나요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
구글로그인에러
과제30 구글 로그인 과제 수행중 자꾸 이 에러 때문에... 정답을 찾지 못하였습니다..무엇이 문제인지 모르겠어요...
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
혹시 MYSQL만 사용하는 경우랑 graphql이랑 같이하는경우랑 TypeORM사용법
혹시 MYSQL만 사용하는 경우랑 graphql이랑 같이하는경우랑 TypeORM사용법 차이 많이 나나요?
-
미해결Slack 클론 코딩[백엔드 with NestJS + TypeORM]
외부 REST API 사용시 보안관련한 문제
안녕하세요~ 제가 현재 Nestjs 와 React로 구성한 app애서 추가로 다른 app의 API를 사용해야되는 상황인데요. API키와SECRET을 생성하고 이를 이용하여 호출하고 있는데, 이 때 클라이언트에서 요청을 한 내용을 보면 이 Authentication 관련된 토큰들이 다 노출되서 고민입니다.정확히 말하면 이건 백엔드 관련도 아니라 프론트쪽이긴한데요.. 프론트에서 다른 앱의 Restful API를 사용하여 요청할때 사용되는 토큰을 보안적으로 안전하게 숨길 수 있는 방법이 있을까요?
-
해결됨따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
false 나오시는분 이렇게 해보세요.
user.save((err, userInfo) => { if (err) return res.json({ success: false, err }) return res.status(200).json({ success: true }) }) 위 코드를 아래와 같이 바꾸니 잘되네요~ user.save() .then((userInfo) => res.status(200).json({ success: true })) .catch((err) => res.json({ success: false, err }));