inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

댓글 내용 수정 중 문제 / inputs 리팩토링 중 질문

해결됨

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

안녕하세요~ 포트폴리오 과제하다가 질문 생겨 남겨요 첫번째는 댓글 내용 수정할 때 댓글 내용을 지우다가 다 지워지면 수정 전 원래 댓글 내용으로 도로 바뀌는 문젠데요 댓글부분 리팩토링 끝마치고나서 발견해서 처음엔 뭘 잘못했나? 했는데 계속 보니 그냥 value에서 defaultValue를 대체하여 작성해주던 아래 부분 때문인 것 같더라고요 value={ props.inputs.contents !== "" ? props.inputs.contents : props.el?.contents ?? "" } 수정을 시작할 땐 props.inputs.contents === ""이니까 댓글 내용인 props.el?.contents를 불러와서 띄워주고, 지우는 중엔 state가 빈 문자열이 아니니까 props.inputs.contents대로 표시되다가 댓글 내용을 전부 지우면 props.inputs.contents가 다시 빈 문자열이 되어서 바로 기존 댓글 내용을 띄워버려요 아예 댓글 내용을 지우고 싶어도 지울수가 없게 되어버리는데 어떻게 바꾸면 될까요? 좀 생각해봤는데 감이 안와서요 혹시 나중에 고치는 내용이 나오나요 두번째는 이번 포트폴리오 과제의 댓글부분 리팩토링 진행하다가 궁금했던 건데요 // BoardCommentWrite.container.tsx // ... const onClickWrite = async (): Promise<void> => { // ... // setWriter(""); // setPassword(""); // setContents(""); setInputs( (prev) => Object.fromEntries( Object.keys(prev).map((key) => [key, ""]), ) as typeof prev, ); // ... } 댓글 작성 끝날때 writer, password, contents를 비워줄 수 있도록 빈 문자열로 초기화시켜주던 걸 이런식으로 바꾸었는데 리팩토링 마치고 나서 잘 돌아가긴 했는데요 위 부분을 너무 어거지로 바꾼 것 같아서 좀 그래요... 사실 setInputs({ writer: "", password: "", contents: "" }) 그냥 이렇게 하는게 여기선 가장 좋은 방법인 것 같긴 한데, 더 많은 state들을 묶는 경우도 있다고 생각하면 것도 좀... 그래서요 이번 댓글 부분 코드에서는 setInputs({ writer: "", password: "", contents: "" }) 이렇게 하는게 가장 적당할까요? 그리고 더 많은 걸 초기화해야한다고 치면 어떻게 하는게 좋을까요?

  • react
  • node.js
  • seo
  • graphql
  • next.js
희주 댓글 1 좋아요 0 조회수 156

함수별 ()와 [] 구분

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

함수별로 어떤것은 ()를 사용하고, 어떤것은 []를 사용하는데 구분하는 법이 따로 있나요? 매번 헷갈리네요

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
wsyang 댓글 2 좋아요 0 조회수 183

시간 복잡도 O(n)과 O(c)의 차이

해결됨

세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)

안녕하세요, 잘 듣고 있습니다! 0.준비 운동에서의 자료구조 정리 - python 강의 부분의 노션을 보니, 해시테이블의 경우 시간 복잡도가 O(c)로 적혀있던데, O(n)과의 차이가 무엇인가요? O(c)를 구글링 해보았는데 나오지 않아 질문드립니다.

  • python
  • 코딩-테스트
  • 알고리즘
댓글 2 좋아요 0 조회수 184

알듯말듯하네요

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

앞에 띄어쓰기도 없고, 몇번을 해봐도 시즌 컬럼이 드랍이 안됩니다.. ㅠㅠ

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
안영준 댓글 3 좋아요 0 조회수 132

df.mode()에서 []의 의미

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

20:14초에서 df['원두'].mode() [0]에서 [0] 의 의미가 무엇인가요? [] 안에 다른 숫자를 넣어도 되는가요?

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
wsyang 댓글 2 좋아요 0 조회수 477

PRIMARY KEY와 CLUSTERED INDEX의 차이

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스

CLUSTERED INDEX의 내용을 학습하다 보니, PRIMARY KEY가 단순히 CLUSTERED INDEX 세팅과 NOT NULL, UNIQUE의 옵션 설정을 한번에 해주는 것 뿐이라고 생각이 듭니다.. 제가 생각하는 것과는 달리 PRIMARY KEY만의 추가적인 차이점이 있을까요?

  • sql
  • dbms/rdbms
맞수 댓글 1 좋아요 0 조회수 368

does not match

해결됨

풀스택 리액트 토이프로젝트 - REST, GraphQL (for FE개발자)

50개의 데이터를 넣는 과정에서 발생한 오류입니다. 임시 데이터라 발생한 오류라 나중에 데이터를 넣으면 해결된다는 답변을 보았는데 그 뒤에 수업을 따라가면서 맞게 코드작성을 하고 있는지 체크가 불가능한 상태여서 임시적으로라도 해결하는 방법이 있을까요?

  • react
  • rest-api
  • graphql
이민재 댓글 2 좋아요 0 조회수 179

JWT 체크필터만들기 보고있습니다

미해결

코드로 배우는 React 19 with 스프링부트 API서버

api 가 요청받을때 시큐리티 필터 넘버링되서 13개쭉나오는 설정은 어디서 하는건지 알수있을까요>?

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
김우철 댓글 2 좋아요 0 조회수 134

docker port

미해결

파이썬 알고리즘 트레이딩 파트2: Interactive Brokers API를 활용한 실시간 알고리즘 트레이딩

안녕하세요, docker 실습을 같이 해보려고 했는데 문제가 있습니다. Dockerfile FROM continuumio/miniconda3:latest RUN mkdir -p /quant 이미지 빌드 후 docker run -d -t —name quant -v $(pwd)/quant:/quant -p 7497:7497 miniconda3:latest 컨테이너를 띄운 후에 진행했습니다. conda 가상환경 설정, 주피터 커널 연결을 마치고 노트북 실행 시 ib.connect() 셀 부분에서 발생한 문제입니다. "Connect call failed ('127.0.0.1', 7497)" 위의 run 명령어와 같이 해주었을 때에는 desktop의 trader workstation에서 포트를 사용중이라는 팝업이 뜹니다. dockerfile에서 expose 만 설정(EXPOSE 1234) 해 주었을 때에도 동일하게 연결이 안됐습니다. 포트 설정을 어떻게 해주어야 하는지 잘 모르겠습니다.. 도커, 포트 포워딩에 대한 이해가 부족해서 구글링 해 봐도 잘 이해가 되지 않아서 도움 요청 남깁니다.

  • python
  • 객체지향
  • 퀀트
짐니 댓글 2 좋아요 0 조회수 180

smote = SMOTE(random_state=0)

미해결

[개정판] 파이썬 머신러닝 완벽 가이드

안녕하세요 선생님 ! 분류에서 샘플링 기법을 배웠는데 from imblearn.over_sampling import SMOTE smote = SMOTE(random_state=0) 회귀문제에서도 smote 기법같은게 있을까요 ?! 강의 교육 전 먼저 질문드립니다 ㅠ..!

  • python
  • 머신러닝
  • 통계
kyb1053 댓글 3 좋아요 0 조회수 312

SYSDATE 실제 시간이랑 차이나는 이유

해결됨

실습으로 손에 잡히는 SQLD(2과목)

안녕하세요. 강의 잘 듣고 있습니다. 이것 저것 실습해보다가 SELECT SYSDATE FROM dual; 이렇게 작성했을 때 실제 제가 하던 시간과 9시간이 차이가 나는 것을 발견했습니다. (오후 12시인데 추출값은 오전 3시로 나옴. 다른 것은 현재와 일치함.) 이렇게 차이가 나는 이유가 있을까요? 수정할 수 있는 방법이 있나요?

  • sql
  • oracle
  • mssql
  • SQLD
allie1017 댓글 2 좋아요 0 조회수 364

DP (BOJ 12865) 풀이에 관한 질문

해결됨

세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)

import sys input = sys.stdin.readline n, k = tuple(map(int, input().split())) dp = [0 for _ in range(k+1)] minVal = sys.maxsize for _ in range(n): w, v = tuple(map(int, input().split())) dp[w] = v if w < minVal: minVal = w for i in range(minVal+1, k+1): maxVal = -1 for j in range(minVal, i): maxVal = max(maxVal, dp[j] + dp[i-j], dp[i]) dp[i] = maxVal print(dp[m]) 안녕하세요 강사님! 우선, 이 강의가 저한테 정말 도움이 되고 있음에 감사드립니다! 저는 위와 같이 dp 테이블을 2차원으로 할 생각을 못하고 풀었다가 시간초과가 났습니다. 아직 dp가 어렵게 느껴져서 dp 테이블 설계를 잘 못하겠네요..ㅠㅠ 다행히 강의에서 dp 문제는 올려주신 강의만 제대로 숙지하면 될 것 같다고 하셨는데 dp 문제를 잘 풀기 위한 다른 팁 같은게 있을까요?

  • python
  • 코딩-테스트
  • 알고리즘
TAESUN 댓글 2 좋아요 0 조회수 168

두개의 차이점

해결됨

Next + React Query로 SNS 서비스 만들기

안녕하세요, 아래 ISR에 대해서 질문드렸었는데, nextjs 에서 2가지 구현 방법이있다고 해서 두가지가 어떤 차이점이 있고 어떻게 활용하는게 좋을지 궁금해서 질문드립니다! 1번 방법 = fetch API 의 revlidate를 활용하여 ISR 구현 import ProductList from "@/component/ProductList"; import { getQueryClient } from "@/component/TanstackQueryOption"; import { getProducts } from "@/fetch/getProducts"; import { dehydrate, HydrationBoundary, QueryClient } from "@tanstack/react-query"; import Image from "next/image"; export default async function ProductPage () { const queryClient = getQueryClient(); await queryClient.prefetchQuery({ queryKey:['products'], queryFn: getProducts, }) return ( <> <section className='visual-sec'> <Image src="/visual.png" alt="visual" width={1920} height={300}/> </section> <section className="product-sec"> <h2>상품 리스트</h2> <HydrationBoundary state={dehydrate(queryClient)}> <ProductList /> </HydrationBoundary> </section> </> ) } import { isServer, QueryClient, defaultShouldDehydrateQuery, } from '@tanstack/react-query' function makeQueryClient() { return new QueryClient({ defaultOptions: { queries: { staleTime: 10 * 1000, }, dehydrate: { shouldDehydrateQuery: (query) => defaultShouldDehydrateQuery(query) || query.state.status === 'pending', }, }, }) } let browserQueryClient: QueryClient | undefined = undefined export function getQueryClient() { if (isServer) { return makeQueryClient() } else { if (!browserQueryClient) browserQueryClient = makeQueryClient() return browserQueryClient } } 'use client' import { getQueryClient } from '@/component/TanstackQueryOption'; import { QueryClientProvider, } from '@tanstack/react-query' import { ReactQueryDevtools } from '@tanstack/react-query-devtools'; import { ReactNode } from 'react' export default function TanstackQueryProvider({ children }: { children: ReactNode }) { const queryClient = getQueryClient() return ( <QueryClientProvider client={queryClient}> {children} <ReactQueryDevtools initialIsOpen={true} /> </QueryClientProvider> ) } export const getProducts = async () => { const res = await fetch(`http://localhost:9090/api/products`, { method: "GET", headers: { "Content-Type": "application/json", }, next: { revalidate: 10, } }); const data = await res.json(); const currentTime = new Date().toLocaleTimeString('ko-KR', { hour: '2-digit', minute: '2-digit', second: '2-digit', fractionalSecondDigits: 3, hour12: false, }); if (typeof window === "undefined") { console.log('fetch products', 'server', currentTime); console.table(data); } else { console.log('fetch products', 'client', currentTime); console.table(data); } if(!res.ok) { throw new Error("Failed to fetch products"); } return data; } 2번 방법 = export const revalidate 로 시간 설정 후 fetch로 받은 data 값을 바로 렌더링 시키기 import Product from "@/component/Product"; import styles from '@/component/ProductList.module.css'; import Image from "next/image"; export const revalidate = 10; export default async function Product2Page() { const data = await fetch('/api/products'); const products = await data.json(); console.log(revalidate, 'Product2Page'); return ( <> <section className='visual-sec'> <Image src="/visual.png" alt="visual" width={1920} height={300}/> </section> <section className="product-sec"> <h2>상품 리스트</h2> <div className={styles.productList}> {products.map((product: any) => ( <Product key={product.item_no} product={product} /> ))} </div> </section> </> ) } 2개다 ISR로 구현되며, 1번 방법은 Data Cache 캐싱 매커니즘을 활용하고, 2번 방법은 Full Router Cache 캐싱 매커니즘을 활용한다의 차이점으로 생각이 드는데, 이 외에 다른 차이점과 실제 개발을 하면서 선호되는 방식이 따로 있을까요? 해당 페이지만 보았을때는 2번 방법으로 해도 어차피 주기적으로 다시 생성해서 최신 데이터를 반영하면 복잡하게 react-query를 사용하고, Hydration을 하면서 데이터를 동기화할 필요가 있나 싶어서 어떻게 사용해야할지 감이 안잡히네여

  • react
  • next.js
  • react-query
  • next-auth
  • msw
밍끼 댓글 1 좋아요 0 조회수 185

강의 내용 정리

미해결

[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)

강의 내용을 듣고 정리하고 학습한 내용을 제 블로그나 노션에 정리해도 괜찮나요?

  • python
  • 웹-크롤링
이은수 댓글 1 좋아요 0 조회수 167

dispatch(logoutUser()) 실행시 dispatch(authuser())도 함께 실행되는 문제

미해결

따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]

dispatch(logoutUser()) 실행시 dispatch(authuser())도 함께 실행되는 문제가 발생하고 있는데 원인을 잘 모르겠습니다.

  • react
  • redux
  • node.js
  • 웹앱
  • mongodb
문주영 댓글 2 좋아요 0 조회수 257

ORA-12541

미해결

실습으로 손에 잡히는 SQLD(2과목)

첫 설정하고 잘 db도 연결해서 쿼리도 했는데 그다음날 다시 들어가니 ORA-12541: 데이터베이스에 접속할 수 없습니다. %s에 리스너가 없습니다. (CONNECTION_ID=NLVRNlPuRjCSIQBsRDyXvQ==) 이런 항목이 뜹니다ㅠㅠ

  • sql
  • oracle
  • mssql
  • SQLD
김신영 댓글 2 좋아요 0 조회수 528

에러서 요렇게만 해보세요

미해결

따라하며 배우는 노드, 리액트 시리즈 - 영화 사이트 만들기

npm -v , node -v 로 버전 확인 후 package.json의 engine에서 node, npm 버전 수정 파이썬을 설치. - 설치시 ADD PATH 인가에 체크 packge.json > dependencies에서 bcrypt 삭제 npm install 설치 후 bcryptjs 추가 설치 npm install bcryptjs --save

  • react
  • node.js
  • 웹앱
  • mongodb
  • express
lanterlt 댓글 1 좋아요 0 조회수 267

환경설정 oracle 연결안되시는 분들(리소스 오류)

미해결

실습으로 손에 잡히는 SQLD(2과목)

환경설정에서 막혀서 이틀정도 헤매다가 chat-gpt에 검색으로 해결한 내용 공유드립니다. (Mac OS 환경에서 터미널로 작성한 내용입니다) docker compose up -d 명령으로 다운로드 완료 [+] Running 13/13 ✔ sqlserver Pulled 1972.2s ✔ 9b857f539cb1 Pull complete 255.4s ✔ 2678dac613fe Pull complete 1703.6s ✔ c88a287125cd Pull complete 1965.5s ✔ a11052f2d5bd Pull complete 1966.1s ✔ oracle Pulled 2792.4s ✔ 9c4def932b31 Pull complete 594.0s ✔ d701f846bb57 Pull complete 2258.2s ✔ f62e8298f905 Pull complete 2425.8s ✔ 20f5a8cddc81 Pull complete 2543.3s ✔ f18c9ed317b9 Pull complete 2705.3s ✔ cb3a8f950dc8 Pull complete 2785.5s ✔ afaeda8e1723 Pull complete 2786.0s [+] Running 3/3 ✔ Network sqld_default Created 7.0s ✔ Container oracle Started 28.3s ✔ Container sql-server Started 만약 위의 내용처럼 정상적으로 다운로드되지 않는다면 아래 내용 차례대로 다시입력 docker rm -f $(docker ps -qa) colima stop colima start --memory 4 --arch x86_64 cd .yml 파일이 있는 경로로 이동 docker compose up -d 이렇게 설치 완료후 dbeaver에 oracle 연결 시도를 하였는데, 리소스가 없음 오류발생 해결방법 : 아래의 코드를 복사하여 터미널에 한번에 입력 (oracle-xe 를 다운로드) docker run \ --restart unless-stopped \ --name oracle \ -e ORACLE_PASSWORD=1111111 \ -p 1521:1521 \ -d \ gvenzl/oracle-xe 다운로드가 완료되면 dbeaver에서 xe/sqld_user/pass 로 다시 oracle 연결 -> 성공

  • sql
  • oracle
  • mssql
  • SQLD
jep 댓글 3 좋아요 0 조회수 345

동영상 소리 건의 드립니다.

미해결

FastAPI 완벽 가이드

안녕하세요, 먼저 좋은 내용의 강의 감사합니다. 다름 아니라 강의 비디오에서 'FastAPI Form 다루기 - 01'부터 녹음 된 소리가 울림이 커서 명료하지 않게 들리는 것 같습니다. 혹시 번거로우시겠지만, 좋은 강의 경험을 위해 그 전까지의 영상과 같이 오디오를 깔끔하게 변환해주실 수 있을지 문의 드립니다. 감사합니다.

  • python
  • sql
  • sqlalchemy
  • FastAPI
하하 댓글 1 좋아요 0 조회수 187

Streamlit run 이 안 돼요ㅠㅠㅠ

미해결

초보자를 위한 ChatGPT API 활용법 - API 기본 문법부터 12가지 프로그램 제작 배포까지

Python 버전을 낮게 해서 Streamlit설치까지 완료했어요. 하지만 streamlit run을 하면 사이트에서도 아무것도 안 뜨고 터미널에서도 오류가 뜬 다고 나와 요

  • python
  • 챗봇
  • streamlit
  • openai
  • chatgpt
  • streamlitrun
gimgirl 댓글 1 좋아요 0 조회수 1325

인기 태그

인프런 TOP Writers

주간 인기글