묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
onSettled와 setQueryData
안녕하세요 선생님! 낙관적 업데이트(2) 강의 마지막에 onSettled를 통해 update가 종료된 후 기존 캐시 무효화 후 db에서 다시 받아와서 갱신시켜주는 로직을 작성한걸로 알고있는데 이때 onMutate 내부에서 setQueryData를 통해 별도의 업데이트된 정보를 캐시에 세팅시켜주는 로직은 필요가 없어지게 되는건가용? export function useUpdateTodoMutation() { const queryClient = useQueryClient(); return useMutation({ mutationFn: updateTodo, onMutate: async (updatedTodo) => { await queryClient.cancelQueries({ queryKey: QUERY_KEY.todo.list, }); const prevTodos = queryClient.getQueryData<Todo[]>(QUERY_KEY.todo.list); /* 이부분 */ queryClient.setQueryData<Todo[]>(QUERY_KEY.todo.list, (prevTodo) => { if (!prevTodo) return []; return prevTodo.map((item) => item.id === updatedTodo.id ? { ...item, ...updatedTodo } : item, ); }); /* //이부분 */ return { prevTodos, }; }, onError: (error, variable, context) => { if (context && context.prevTodos) { queryClient.setQueryData<Todo[]>( QUERY_KEY.todo.list, context.prevTodos, ); } }, onSettled: () => { queryClient.invalidateQueries({ queryKey: QUERY_KEY.todo.list, }); }, }); }
-
미해결한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
(4.13) setQueryData 질문드립니다
queryClient.setQueryData를 사용할 때, 단순히 새 값을 바로 전달하는 경우와 업데이트 함수를 사용하는 경우가 있던데, 각각 언제 사용해야 하는지 명확히 구분이 잘 안 돼요. 어떤 기준으로 사용하면 되는지 설명해주실 수 있을까요?..
-
해결됨한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
실무에서의 JWT에 대해서 질문드려요
JWT가 이론적으로는 DB에 액세스하는 과정없이 인증이 가능하다고는 하지만,, jwt.io같은데서 payload의 조회를 쉽게 할 수 있기도 하다보니 웬만한 개인정보를 넣는 것은 지양하는 걸로 알고 있습니다. 실무에서는 사실상 payload에 userId정도만 넣어두고, 서버에서 이 JWT를 받아 디코딩하여 받은 userId로 DB에 액세스하여 유저정보를 가져와서 유효한 유저인지 파악한 다음 클라이언트에 응답하는 것이 일반적인 케이스가 아닌가.. 그러면 세션과 큰차이가 사실상 없는 것이 아닌가 궁금하여 질문드립니다!
-
미해결[플러터플로우] 실전! 앱 출시를 위한 끝장 노하우!
카카오 SUPABASE SDK 로그인은 ?
카카오 SUPABASE SDK 로그인 및 CLI 업로드 강의는 어떤걸 참조해야 하나요?이것떄문에 강의 구매했는데... 뭔가 참조하여 따라하기 어렵네요
-
미해결한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
prettier 자동 적용 관련 이슈
안녕하세요다른 분들이 올리신 prettier 관련 질문글과 동일하게 prettier 적용 이슈 발생하여 문의글 남깁니다.이전 질문글들에 답변 해주신 것 참고해서 해결하려고 하였으나 여전히 되지 않더라구요.무슨 문제일까요? prettier 확장 설치 확인 파일명을 .prettierrc 에서 .prettierrc.json 으로 바꿔봤음에도 되지 않음Default Formatter 설정 확인FormatOnSave 옵션 활성화 확인프로젝트별 설정 파일 확인git repo 링크 남겨놓습니다https://github.com/seonyoungg/onebite-exam
-
미해결한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
css intellisense 적용하면 prettier가 안됩니다.
npm i -D prettier prettier-plugin-tailwindcss명령어 실행하고.prettierrc파일생성후 { "plugins": ["prettier-plugin-tailwindcss"] }코드 작성후 저장하면 원래 적용되던 빈 줄 없애는 것도 적용 안되고<div className="underline text-7xlfont-bold text-red-500 "> 이부분도 정렬이 안됩니다.format on save 체크되어 있고, default formatter도 prettier-code formatter로 되어 있습니다.
-
미해결한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
강의에서 저장하면 자동으로 import 되는건 뭔가요?
강의에서는 useState같은걸 쓸때 자동으로 위에 import 가 추가되는데 그건 어떻게 적용하는건가요?
-
미해결한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
prettier
강의 내용대로 하였는데 저장 할때는 정렬이 되지 않고터미널에 npx prettier --write src/App.tsx 를 입력 하여야 작동하는데 이유가 뭘까요...
-
미해결한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
6.8) initialState 타입을 as State로 단언하신 이유가 궁금합니다.
zustand 세션 스토어를 만드는 과정에서 타입을const initalState: State = { //... }가 아닌const initalState = { //... } as State;로 선언하신 이유가 궁금합니다
-
미해결한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
network 탭 리퀘스트 관련 질문
(네트워크 필터 설정을 잘못했던 게 문제였습니다.😂 감사합니다.)안녕하세요, 이정환 강사님.강의 잘 듣고 있습니다. (6.10) 비밀번호 재설정 구현 강의에서,인증 메일 주소를 복사해서 붙여넣기 하니까 Network 탭에 해당 리퀘스트만 들어오고 'verify~'로 시작하는 리퀘스트는 없더라구요.링크에 접속했을 때 리디렉션은 잘 됩니다.200 ok인 걸로 봐서 정상 작동하는 것 같긴 한데, 문제가 있는 걸까요? 감사합니다.
-
해결됨Supabase, Next 풀 스택 시작하기 (feat. 슈파베이스 OAuth, nextjs 14)
vsCode 대신 커서를 사용
커서를 사용해도 플러그인 모두 동일하게 사용 가능한지요?
-
해결됨Supabase, Next 풀 스택 시작하기 (feat. 슈파베이스 OAuth, nextjs 14)
mac 터미널 설정이 궁금합니다
사용하시는 터미널이랑, 테마, 플러그인 어떤것을 사용하시는지 궁금합니다
-
미해결[플러터플로우] 실전! 앱 출시를 위한 끝장 노하우!
화면이 나오지 않네요
소리는 나오는데 화면이 전혀 안나오세요 강이는 애플앱스토어 배포하기 입니다.. 마우스를 아래 로가 미리보기를 보면 미리보기 화면에는 영상이 있는것 같아 보이는데..
-
해결됨한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
여러 사진 중 일부 사진의 허용 사이즈 초과로 실패한 경우에 대해
안녕하세요 정환님! 항상 강의 감사한 마음으로 잘 듣고 있습니다. 이번 이미지 업로드 구현하기2 강의를 끝까지 듣고 따라하던중 스토리지에 이미지 업로드 병렬로 요청 시 제가 업로드 시도한 이미지 4장 중 1장이 허용 사이즈 초과로 스토리지 업로드 요청이 실패 했었는데요, 당연히 이미지 업로드 실패로 await deletePost(post.id);가 호출되 post.id를 받기위해 먼저 생성한 포스트가 삭제되어 포스트 자체가 안된것처럼 동작했습니다. 근데 storage에서는 업로드 요청이 실패된 이미지를 제외하고 나머지 3장의 이미지가 저장이 되어있더라고요!간단하게 4장 병렬 이미지 업로드 요청 > 3장 성공 1장 실패 > 이미지 업로드 일부 실패로 포스트 삭제 > storage에는 성공한 3장의 이미지만 존재, 포스트는 없음 이 상태여서 혼자 찾아봐서 추가해봤는데 맞는지도 궁금하고 맞다면 다른 분들도 비슷한 상황에서 도움이 될까 싶어 올립니다!!images.ts 파일에 스토리지에서 이미지 삭제하는 비동기 요청 함수export async function deleteImages(filePath: string[]) { const { data, error } = await supabase.storage .from(BUCKET_NAME) .remove(filePath); if (error) throw error; return data; } post.ts > createPostWithImages 함수 에서 try, catch문 밖에 업로드전 생성한 filePath 저장할 배열 값을 갖는 변수 선언 const uploadedFilePaths: string[] = []; const imageUrls = await Promise.all( images.map((image) => { const fileExtension = image.name.split(".").pop() || "webp"; const fileName = `${Date.now()}-${crypto.randomUUID()}.${fileExtension}`; const filePath = `${userId}/${post.id}/${fileName}`; uploadedFilePaths.push(filePath); return uploadImage({ file: image, filePath, }); }), );uploadImage 리턴 전에 생성한 filePath값 저장catch문에서if (uploadedFilePaths.length > 0) { await deleteImages(uploadedFilePaths); }조건문 추가 최종 결과병렬 요청중 일부의 요청이 파일의 크기 초과 등으로 실패하면throw error > await deletePost(post.id); if (uploadedFilePaths.length > 0) { await deleteImages(uploadedFilePaths); } throw error;포스트 삭제, 스토리지 이미지 삭제글을 잘 못써서 가독성이 떨어지는 부분은 양해부탁드립니다..
-
미해결한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
회원가입, 로그인 요청 시 400 에러
안녕하세요강의 열심히 듣고 있는데 회원가입, 로그인 성공하고 요청 보낼 때 요청이 잘 들어왔다가 한 0.5초 뒤에 400에러로 바뀝니다.코드는 모든 부분이 똑같은데 혹시 왜 이러는걸까요??의심가는 행동은 section05를 다 듣고 section06 폴더를 만들고 section05에서 사용한 파일을 그대로 복사하여 사용 중인데, 이 부분에서 문제가 있을까요?
-
미해결한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
Supabase 외 다른방법
안녕하세요. 강의 듣다 질문 드리는데요강의에서는 supabase를 사용하는데요 그러면 supabase가 아닌 다른 DB(Mysql, PostgreSQL 등) 를 사용한다면 auth.ts 는 다른 방식으로 사용을 해야 되나요? 아니면 별도의 인증 라이브러리가 있을까요?
-
미해결비전공자 혼자서 하루 만에 수익화 앱 출시하기
개인사업자 조직계정 등록에 관하여
선생님 안녕하세요 개인사업자로 duns를 발급받아 조직계정으로 계정을 생성을 하면 테스트없이 앱출시가 가능한걸로 알고 있는데 여기저기 확인해보니 인앱결제, 구독 서비스 같은 경우는 문제가 될 확률이 매우높고(개인사업자가 조직계정을 생성하였기때문에), 하지만 애드몹 광고 수익은 문제가 되지 않을거라는 말이 있는데 어떻게 생각하시는지 궁금합니다. 이것도 약간으 꼼수가 되는건지 여기서 꼼수라하는것은 조직계정을 발급을 통한 테스트 패스입니다.
-
해결됨한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
수업 자료 없나요?
전 강의들은 PDF으로 있었는데이번에는 수업자료가 없는거 같은데 맞나요?ㅠ
-
해결됨[플러터플로우] 실전! 앱 출시를 위한 끝장 노하우!
text overflow 관련 문의
테스트 오버플로어 상황이.. 강의 내용과 다르게 화면이 좀 다르게 나오는데.. 버전 차이인가요?
-
해결됨한 입 크기로 잘라먹는 실전 프로젝트 - SNS 편
11강 수업자료가 수업영상입니다.
안녕하세요.11강 수업자료를 다운로드 받아보니 해당 수업영상입니다. 괜찮을까요?