Continue 질문입니다
미해결
문과생도, 비전공자도, 누구나 배울 수 있는 파이썬(Python)!
for k in range(10): if k < 5: continue print(k) elif k == 7: break 이렇게 했을때는 왜 5,6이 아니라 아무것도 출력이 안되나요?
- python
172만명의 커뮤니티!! 함께 토론해봐요.
미해결
문과생도, 비전공자도, 누구나 배울 수 있는 파이썬(Python)!
for k in range(10): if k < 5: continue print(k) elif k == 7: break 이렇게 했을때는 왜 5,6이 아니라 아무것도 출력이 안되나요?
미해결
한 입 크기로 잘라먹는 Next.js
안녕하세요, 강의 잘 듣고 있습니다. 하나의 페이지에서 두 개 이상의 데이터를 불러와야 할 때, 리액트에서 그래왔듯이 자연스럽게 데이터를 페칭하는 api 로직을 services/api 폴더로 분리 할 것이라고 생각했는데요, 강의에서는 데이터에 따라 데이터를 페칭하여 렌더링하는 전체 로직을 각각의 컴포넌트로 분리 하는 것을 보고 질문 드리게 되었습니다. 데이터를 기준으로 관심사를 분리할지, 기능을 중심으로 분리할지는 선호의 영역인가요? 아니면 어떤 사전 렌더링의 특수성으로 데이터 페칭 로직은 따로 분할하지 않는 것인가요? 그러면서 동시에 각각의 컴포넌트(AllBooks, RecoBooks)를 별도의 components 폴더로 분리하지 않는 이유도 궁금합니다! 곧 넥스트를 사용한 프로젝트에 참여하게 되는데 폴더 구조를 어떻게 가져가야 할지 고민이 많습니다 ㅠㅠ 팀원들이 모두 넥스트는 처음이라 아직 이렇다 할 기준이 없어서요. 정답이 있는 문제는 아니겠지만 조언 부탁드립니다!!
미해결
Next + React Query로 SNS 서비스 만들기
우선 인터셉팅 라우팅을 버튼, 링크 등을 통해 이동 시 인터셉트된 page를 렌더링하고 새로고침이나 주소창을 통해 이동했을 때 정상(?)적인 page를 렌더링하는 것으로 이해했습니다. 인터셉팅 라우팅 폴더를 만들어야 할 위치가 궁금해서 /test1/test2 에서 Link태그를 통해 /test1 으로 이동할 때 새로고침 시 표시 되는 test1과 intercepted test1을 구분하는 코드를 작성했습니다 "(.)test1" 폴더 위치를 바꿔보면서 어떻게 동작하는 지 확인해보는 과정에서 이해가 되지 않는 부분이 있어서 질문드립니다. 이 폴더구조로 해야 작동하고, 이 폴더 구조는 작동이 안되는게 이해가 안됩니다. 뭔가 (.), (..), (..)(..) 이런식으로 경로 지정이 가능하면 인터셉팅 라우팅 폴더는 어디 있든 상관없어도 될 것 같았는데... 아래 폴더구조가 작동을 안되니 디게 혼란스럽네요 ㅠㅠ
미해결
한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
오픈 그래프가 아무것도 적용이 되지 않는데 문제를 못 찾겠습니다.. index.html 에서 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <link rel="icon" type="image/svg+xml" href="/favicon.ico" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>감정일기장</title> <meta property="og:title" content="감정 일기장" /> <meta property="og:description" content="나만의 작은 감정 일기장" /> <meta property="og:image" content="/thumbnail.png" /> </head> <body> <div id="root"></div> <script type="module" src="/src/main.jsx"></script> </body> </html> 으로 작성을 하고 배포를 했는데 오픈 그래프 3가지 중 아무것도 적용이 안되네요.. 카톡말고도 티 스토리 블로그 글쓰기에서도 적용이 안 되는걸로 보아 캐시 문제는 아닌 것 같은데.. 오타가 있는지도 다른 분들 코드 보면서 비교해봤고 이미지도 public 폴더에 잘 있습니다.. 뭐가 문제일까요?.. 배포링크: https://emotion-diary-dfgr3t44x-watnus-projects.vercel.app/ 배포링크에서 썸네일 확인: https://emotion-diary-dfgr3t44x-watnus-projects.vercel.app/thumbnail.png
해결됨
한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
문제상황: 수정을 위해 체크박스를 체크해도 아무 변화도 생기지 않는 상황 reducer 내용 const reducer = (state, action) => { switch(action.type){ case 'CREATE': return [action.data,...state]; case 'UPDATE': return state.map((item) => { console.log(action, item.id, item.isDone) return item.id === action.targetId ? {...item, isDone: !item.isDone} : item }) case 'DELETE': return state.filter((item) => item.targetId !== action.targetId) default: state } } const onUpdate = (targetId) => { dispatch({ type:"UPDATE", targetId }) } 예상 문제: console.log(action.targetId, item.id, item.isDone)을 해본결과 action.targetId가 내가 원하는 id값만 가져오는것이 아닌 저렇게 객체 전체를 가져오기 때문에 action.targetId와 item.id가 일치하지 않아 체크가 되지않는 현상인것 같습니다. 어디를 보면 좋을지 및 무엇을 수정해야하는지 알려주시면 감사하겠습니다.
미해결
프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
1개의 콘솔 내용을 입력 했는데 실행값이 나오지 않습니다 Extensions에서 Micorsoft 인증 된 걸 다운로드 한 다음 콘솔 내용 입력 후 Enter 대신 Ctrl+F5 눌렀는데 화면 처럼 실행 되는데 제가 설정을 잘못 한 걸 까요?
해결됨
아바타 커뮤니티앱 만들기 (React Native Expo)
import React from 'react'; import { colors } from "@/constants"; import {StyleSheet, TextInput, View,Text, TextInputProps} from 'react-native'; interface InputFieldProps extends TextInputProps{ label?:string; variant?: "filled" | "standard" | "outlined"; } function InputField({label, variant = "filled", ...props }: InputFieldProps) { return ( <View> {label && <Text style={styles.label}>{label}</Text>} <View style={[styles.container, styles[variant]]}> <TextInput style={styles.input} {...props} /> </View> </View> ); } const styles = StyleSheet.create({ container:{ height:44, borderRadius:8, paddingHorizontal:10, justifyContent:"center", alignItems:"center", }, label:{ fontSize:12, color: colors.GRAY_700, marginBottom:5, }, filled:{ backgroundColor: colors.GRAY_100, }, standard: {}, outline: {}, input: { fontSize:16, padding: 0, flex:1, }, }); export default InputField; 도와주세요,,선생님 ㅠㅠ
미해결
한 입 크기로 잘라먹는 Next.js
npx prisma db push 명령어 실행시, 아래와 같은 오류가 발생합니다. Error: P1001: Can't reach database server at aws-0-ap-northeast-2.pooler.supabase.com :`5432` .env 파일 루트 경로에 생성 DATABASE_URL, DIRECT_URL 오타 없이 알맞게 입력 위의 두 조건 모두 만족하고 있는데, 왜 이런 오류가 발생하는 걸까요? 추가로,가이드에 따라 supabase에서 생성한 db가 현재 활성화 상태이거나 running상태인지 어떻게 알 수 있을까요?
해결됨
한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
제가 이해한 내용이 맞는지 궁금하여 질문드립니다! 콜백 함수 없이 비동기 작업을 Web APIs에게 넘겨준다면 비동기 작업이 처리되고 넘겨줄 콜백 함수가 없으므로 아무일도 일어나지 않는다. 개발자가 자바스크립트에서 비동기적으로 어떠한 코드를 처리하기 위한 목적으로 비동기 코드와 콜백 함수를 같이 작성한다. 라고 생각해도 될까요?
해결됨
아바타 커뮤니티앱 만들기 (React Native Expo)
어떻게 해야할까요 ㅠㅠ
해결됨
한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
안녕하세요! 질문있습니다. (강의 구간: 10:43초) 강사님께서 평소 컴포넌트 파일들을 만들때 파일명 첫 번째에는 항상 대문자로 적으셨는데 hooks를 만들때는 첫 번째 글자를 소문자로 적어주셨는데 hooks만들때는 첫 번째 글자를 소문자로 적는건가요?
해결됨
아바타 커뮤니티앱 만들기 (React Native Expo)
Window, node 22 버전 사용중입니다. 4-5 로그인 연동하기에서 회원가입까진 연동이 되는데 로그인 api 요청시 500에러가 발생합니다. [Nest] 22548 - 2025. 02. 15. 오후 10:00:50 ERROR [ExceptionsHandler] "expiresIn" should be a number of seconds or string representing a timespan Error: "expiresIn" should be a number of seconds or string representing a timespan at D:\project\community\server\node_modules\jsonwebtoken\sign.js:56:15 at Array.forEach (<anonymous>) at validate (D:\project\community\server\node_modules\jsonwebtoken\sign.js:47:6) at validateOptions (D:\project\community\server\node_modules\jsonwebtoken\sign.js:62:10) at module.exports [as sign] (D:\project\community\server\node_modules\jsonwebtoken\sign.js:171:5) at D:\project\community\server\node_modules\@nestjs\jwt\dist\jwt.service.js:56:17 [Nest] 22548 - 2025. 02. 15. 오후 10:00:50 LOG [HTTP] [POST] /auth/signin (500) (okhttp/4.12.0) //axios.ts import axios from "axios"; import {Platform} from "react-native"; const baseUrls = { ios: 'http://localhost:3030', android: 'http://10.0.2.2:3030' } const axiosInstance = axios.create({ baseURL: baseUrls[Platform.OS] ?? 'http://localhost:3030' }); export default axiosInstance //auth.ts import {getSecureStore} from "@/utils/secureStore"; import axios from "@/api/axios"; import {Profile} from "@/types"; interface RequestUser { email: string; password: string } async function postSignup(body: RequestUser): Promise<void> { const {data} = await axios.post('/auth/signup', body); return data; } async function postLogin(body: RequestUser): Promise<{ accessToken: string }> { const {data} = await axios.post('/auth/signin', body); return data; } //useAuth.ts function useLogin() { return useMutation({ mutationFn: postLogin, onSuccess: async ({accessToken}) => { setHeader('Authorization', accessToken) await saveSecureStore('accessToken', accessToken); queryClient.fetchQuery({queryKey: ['auth', 'getMe']}); router.replace('/') }, onError: () => { }, }) } postLogin 에서 엔드포인트만 /auth/signup로 바꾸면 회원가입은 정상적으로 요청이 됩니다.
해결됨
코드로 배우는 React 19 with 스프링부트 API서버
강의대로 npx tailwindcss init 을 하게되면 'tailwind'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 라고 뜨네요. 어떻게 해결 방법이 없을까요? vscode 재시작해봐도 똑같네요. 구글링 해보니, 환경변수에 nodejs 경로를 path에 추가하라고 하는데, 이미 추가되어있구요. 아, node버전이 기존에 18버전이 설치되어 있어서 그건 새로 설치하지는 않았습니다.
해결됨
React, Node.js, MongoDB로 만드는 나만의 회사 웹사이트: 완벽 가이드
리액트 버젼이 19.0 이상이라서 안된다고하는데 리액트를 다운그레이드해야하나요??...리액트를 다운그래이드 안하고 사용하는 방법은 없을까요?
미해결
Supabase의 DB로 로그인 검증 기능을 만들려고 해요 그런데 로그인 검증을 하기 위해서 예외처리를 테스트 하는데 error 400 (Bad request) 가 발생 합니다. 데이터 값이 있으면 로그인은 됩니다. 하지만 존재 하지 않는 값의 예외처리를 할려 하는데 무조건 error 400 (Bad request) 가 나타나내요 이 문제를 해결해 줄 수 있는분 답변 부탁 드립니다. const handleLogin = async (e) => { e.preventDefault(); if (!email || !password) { alert('이메일과 비밀번호를 입력해주세요.'); return; } // 이메일 형식 확인 (정규식 사용) const emailPattern = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; if (!emailPattern.test(email)) { alert('올바른 이메일 형식을 입력해주세요.'); return; } if (password.length < 6) { alert('비밀번호는 최소 6자 이상이어야 합니다.'); return; } try { const { data, error } = await supabase.auth.signInWithPassword({ email, password, }); if (error) { alert('이메일 또는 비밀번호가 잘못되었습니다.'); return; } if (data?.user) { alert('로그인이 완료되었습니다.'); navigate('/'); } else { alert('회원 정보가 존재하지 않습니다.'); } } catch (err) { console.error('오류 발생:', err); alert('오류가 발생했습니다. 잠시 후 다시 시도해주세요.'); } };
미해결
Next + React Query로 SNS 서비스 만들기
안녕하세요! 강의 잘 듣고 있습니다! 강의 도중 마이크로 프론트엔드에 대해 여쭤볼게 있어 질문 드립니다! 다름이아니라, 3개의 Next 앱을 같은 도메인 아래 뒤에 주소들로만 구분해서 하나로 묶는 마이크로 프론트엔드는 그렇다면 결국 레포지토리가 3개인가요??
해결됨
(2026 최신!) 일주일만에 합격하는 정보처리기사 실기
*ptr++의 경우에는 arr의 값도 증가 시키고 포인터 위치도 변경시키는거고, ++*ptr 일경우에는 바라보고 있는 포인터위치는 변하지 않고 arr의 값만 증가 시키고 끝나는건가요? 제가 지금 이해하고 있는건 *ptr 의 앞에 "++"이 붙으면 값만 선증가시키고, "++"이 뒤에 붙이면 값을 후증가시키고 메모리값도 증가시킨다. 인데 이게 맞나요?
미해결
코드로 배우는 React 19 with 스프링부트 API서버
outlet을 이용한 서브메뉴에서 질문있습니다. main <-이 부분이 부모페이지고 list add <-서브페이지면 list page component<-자손페이지 인가요? 강의에서 IndexPage.js에서 <Outlet/> 부분에 ListPage.js 코드가 들어가 있는 형태인거 같은데요. 근데 제가 아래처럼 작동해봤을 떄 Todo List Page Component 이 부분이 안나오는데요. 코드 어디가 문제인가요? 코드 복붙했는데요. 아래는 IndexPage.js 코드입니다. import { Outlet } from "react-router-dom"; import BasicLayout from "../../layouts/BasicLayout"; const IndexPage = () => { return ( <BasicLayout> <div className="w-full flex m-2 p-2 "> <div className="text-xl m-1 p-2 w-20 font-extrabold text-center underline">LIST</div> <div className="text-xl m-1 p-2 w-20 font-extrabold text-center underline">ADD</div> </div> <div className="flex flex-wrap w-full"> <Outlet/> </div> </BasicLayout> ); } export default IndexPage; 아래는 ListPage.js 코드입니다. import React from 'react' export default function ListPage() { return ( <div className="p-4 w-full bg-orange-200 "> <div className="text-3xl font-extrabold"> Todo List Page Component </div> </div> ) }
미해결
코드로 배우는 React 19 with 스프링부트 API서버
살려주세요 선생님..ㅠ
해결됨
실리콘밸리 엔지니어가 가르치는 파이썬 장고 웹프로그래밍
LOGGING ={ 'version':1, 'disable_existing_loggers':False, 'handlers':{ 'file':{ 'level':'DEBUG', 'class':'logging.FileHandler', 'filename':os.path.join(BASE_DIR, 'logs/django.log'), 'formatter':'json', }, 'console':{ 'class':'logging.StreamHandler', 'formatter':'json', }, }, 'formatters':{ 'json':{ 'class': 'pythonjsonlogger.jsonlogger.JsonFormatter', 'format': '%(asctime)s %(levelname)s %(name)s %(message)s', }, }, 'root':{ 'handlers':['file','console'], 'level':'DEBUG', }, 'loggers':{ 'django':{ 'handlers':['file','console'], 'level': 'DEBUG', 'propagate':False, }, }, runserver 하는 순간 {"asctime": "2025-02-14 20:41:50,823", "levelname": "DEBUG", "name": "django.utils.autoreload", "message": "File C:\\Users\\moon\\miniforge3\\envs\\workout\\Lib\\site-packages\\PIL\\__init__.py first seen with mtime 1739352505.781736"} 이런 변경한 적 없는 것들이 자동리로드 되면서 콘솔에 계속 올라옵니다. 이유가 궁금합니다.