묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨React Native with Expo: 제로초에게 제대로 배우기
카카오 로그인이 안됨
LOG key: Xo8WBi6jzSxKDVR4drqm84yr9iU= ERROR [Error: invalid android_key_hash or ios_bundle_id or web_site_url]key는 잘 받아오는데 로그인이 안됩니다.. const onKakaoLogin = async () => { try { console.log("key: ", await getKeyHashAndroid()); const result = await kakaoLogin(); console.log(result); const user = await me(); console.log(user); // TODO: save the token to server } catch (error) { console.error(error); } };현재 사용 중인 코드입니다.
-
해결됨React Native with Expo: 제로초에게 제대로 배우기
npm run android 시 에러
reactive kakao login docs를 보고 설치하고 강의따라 kakako core,user 설치했는데, 아래와같은 에러가 계속 발생합니다> Configure project :react-native-reanimated Android gradle plugin: 8.8.2 Gradle: 8.13 [Incubating] Problems report is available at: file:///Users/chaejinjeong/Desktop/lukas/Study/reactnative/zerocho/threads/android/build/reports/problems/problems-report.html FAILURE: Build failed with an exception. * What went wrong: Could not determine the dependencies of task ':app:processDebugResources'. > Could not resolve all dependencies for configuration ':app:debugRuntimeClasspath'. > Could not find com.kakao.sdk:v2-common:2.20.1. Searched in the following locations: - file:/Users/chaejinjeong/Desktop/lukas/Study/reactnative/zerocho/threads/node_modules/react-native/android/com/kakao/sdk/v2-common/2.20.1/v2-common-2.20.1.pom - https://dl.google.com/dl/android/maven2/com/kakao/sdk/v2-common/2.20.1/v2-common-2.20.1.pom - https://repo.maven.apache.org/maven2/com/kakao/sdk/v2-common/2.20.1/v2-common-2.20.1.pom - https://www.jitpack.io/com/kakao/sdk/v2-common/2.20.1/v2-common-2.20.1.pom - https://central.sonatype.com/repository/maven-snapshots/com/kakao/sdk/v2-common/2.20.1/v2-common-2.20.1.pom Required by: project :app > project :react-native-kakao_core > Could not find com.kakao.sdk:v2-user:2.20.1. Searched in the following locations: - file:/Users/chaejinjeong/Desktop/lukas/Study/reactnative/zerocho/threads/node_modules/react-native/android/com/kakao/sdk/v2-user/2.20.1/v2-user-2.20.1.pom - https://dl.google.com/dl/android/maven2/com/kakao/sdk/v2-user/2.20.1/v2-user-2.20.1.pom - https://repo.maven.apache.org/maven2/com/kakao/sdk/v2-user/2.20.1/v2-user-2.20.1.pom - https://www.jitpack.io/com/kakao/sdk/v2-user/2.20.1/v2-user-2.20.1.pom - https://central.sonatype.com/repository/maven-snapshots/com/kakao/sdk/v2-user/2.20.1/v2-user-2.20.1.pom Required by: project :app > project :react-native-kakao_user * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. > Get more help at https://help.gradle.org. Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0. You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins. For more on this, please refer to https://docs.gradle.org/8.13/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation. BUILD FAILED in 6s 33 actionable tasks: 5 executed, 28 up-to-date Error: /Users/chaejinjeong/Desktop/lukas/Study/reactnative/zerocho/threads/android/gradlew app:assembleDebug -x lint -x test --configure-on-demand --build-cache -PreactNativeDevServerPort=8081 -PreactNativeArchitectures=arm64-v8a exited with non-zero code: 1 Error: /Users/chaejinjeong/Desktop/lukas/Study/reactnative/zerocho/threads/android/gradlew app:assembleDebug -x lint -x test --configure-on-demand --build-cache -PreactNativeDevServerPort=8081 -PreactNativeArchitectures=arm64-v8a exited with non-zero code: 1 at ChildProcess.completionListener (/Users/chaejinjeong/Desktop/lukas/Study/reactnative/zerocho/threads/node_modules/@expo/spawn-async/src/spawnAsync.ts:67:13) at Object.onceWrapper (node:events:622:26) at ChildProcess.emit (node:events:507:28) at maybeClose (node:internal/child_process:1101:16) at Process.ChildProcess._handle.onexit (node:internal/child_process:305:5) ... at spawnAsync (/Users/chaejinjeong/Desktop/lukas/Study/reactnative/zerocho/threads/node_modules/@expo/spawn-async/src/spawnAsync.ts:28:21) at spawnGradleAsync (/Users/chaejinjeong/Desktop/lukas/Study/reactnative/zerocho/threads/node_modules/@expo/cli/src/start/platforms/android/gradle.ts:134:28) at assembleAsync (/Users/chaejinjeong/Desktop/lukas/Study/reactnative/zerocho/threads/node_modules/@expo/cli/src/start/platforms/android/gradle.ts:83:16) at runAndroidAsync (/Users/chaejinjeong/Desktop/lukas/Study/reactnative/zerocho/threads/node_modules/@expo/cli/src/run/android/runAndroidAsync.ts:62:24)node_modules 모두 삭제하고 설치해도 똑같습니다npx expo install --fix 로도 호환이 안맞춰지는 것 같습니다.패키지는 설치되어있는 것 확인했습니다.제 진행중인 코드입니다.
-
미해결한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
props 에 불이 안켜지죠...?
불이 왜 안켜지는거죠...?
-
해결됨[코드캠프] 부트캠프에서 만든 '완벽한' 프론트엔드 코스
17강 질문
강의 17 부터는 서버와 데이터베이스가 따로 필요한걸까요?서버를 따로 구축해야 되는지, 데이터베이스를 추가로 설치해야 되는건지 궁금합니다
-
미해결Next.js App router 기반 Chat GPT 만들기
섹션6 헤더 마크업 - zustand 적용에 오류가 발생합니다
// model.ts import { create } from 'zustand'; type State = { model: string; }; type Action = { updateModel: (model: State['model']) => void; }; const useModelStore = create<State & Action>((set) => ({ model: 'gpt-3.5-turbo', updateModel: (model) => set(() => ({ model })), })); export { useModelStore }; // ModelSelect.tsx 'use client'; import { useModelStore } from '@/store/model'; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '../ui/select'; const MODELS = ['gpt-3.5-turbo', 'gpt-4', 'gpt-4o']; export default function ModelSelect() { const { model: currentModel, updateModel } = useModelStore((state) => ({ model: state.model, updateModel: state.updateModel, })); const handleChange = (selectModel: string) => { updateModel(selectModel); }; return ( <Select value={currentModel} onValueChange={handleChange}> <SelectTrigger className="w-[180px] border-none focus:ring-transparent"> <SelectValue placeholder="모델 선택" /> </SelectTrigger> <SelectContent> {MODELS.map((model) => ( <SelectItem key={model} value={model} disabled={currentModel === model}> {model} </SelectItem> ))} </SelectContent> </Select> ); } 위 코드 적용 결과 아래와 같은 무한반복 에러가 발생합니다. 강의 내용과 비교해 보아도 문제를 찾지 못했습니다 ㅜㅜ
-
해결됨한 입 크기로 잘라먹는 Next.js(v15)
[Next.js] 데이터 스트리밍에 대한 문의드립니다.
페이지단위, 컴포넌트 단위로 스트리밍은 이해되는데, 만약 테이블에 데이터를 불러오는데, 데이터가 100만개 이럴때 테이블의 첫 페이지에 20개만 불러오고 이런 식으로 동작하게 할 수 있는 스트리밍 방식이 있을까요?
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
day17과제중 Context 객체생성 오류발생했습니다.
day17과제하던중에, Context 객체 생성하는데 오류가 발생했습니다.export를 붙여서 진행하면 화면과 같이 오류가 발생하고, export를 제외하면 랜더링할때 빈화면이 나옵니다. 다른컴퍼넌트에는 useContext이용해서 함수 공급받는거 작성했습니다.import "./App.css" import Header from "./components/Header" import ContactEditor from "./components/ContactEditor" import List from "./components/List" import {useState, useRef, useCallback, createContext, useMemo} from 'react' const mockData = [ //임시데이터라는 뜻(mockData) { id: 0, name: "이정환", email: "king32@gmail.com" }, { id: 1, name: "김정환", email: "queen25@gmail.com" }, { id: 2, name: "하정환", email: "prince13@gmail.com" }, ] export const ContactStateContext = createContext(); export const ContactDispatchContext = createContext(); function App() { const [contact, setContact] = useState(mockData); const idRef = useRef(3) const onCreate = useCallback((name,email)=>{ const newContact = { id: idRef.current++, name: name, email: email, }; setContact([newContact, ...contact ]); },[]); const onDelete = useCallback((targetId) => { setContact(contact.filter((it) => it.id!== targetId)); },[]) const memoizedDispatch = useMemo( ()=>({onCreate, onDelete}),[] ); return( <div className="App"> <Header /> <ContactStateContext.Provider value={contact}> <ContactDispatchContext.Provider value={memoizedDispatch}> <ContactEditor /> <List /> </ContactDispatchContext.Provider> </ContactStateContext.Provider> </div> ) } export default App;
-
해결됨[코드캠프] 부트캠프에서 만든 '완벽한' 프론트엔드 코스
tailwinde-css
궁금한 점 : @apply 핑크로 변하지 않아도 실행은 됩니다! 상관 없는걸까요??styles.module.csstailwind.config
-
해결됨이거 하나로 종결-고품질 리액트와 스프링부트 65시간 풀스택 개발 강의(도커, AWS, GITHUB-ACTIONS)
강의노트가 자료에 있는건가요..? (답변이 늦어져도 괜찮습니다)
https://webzz.tistory.com 링크를 강의노트에 넣어놓을테니 꼭 확인 부탁드린다고 하셨는데 1. 자료안에 강의 노트가 안보입니다2.https://webzz.tistory.com 이 사이트는 쿠팡 파트너스 사이트 같습니다ㅠㅠ
-
미해결React Native with Expo: 제로초에게 제대로 배우기
nativeAppKey가 없다는 오류가 뜹니다
yarn info react version19.1.0yarn info react-native version0.80.1yarn info expo version53.0.20제로초님 안녕하세요! 강의 내용과 똑같이 환경변수를 설정하고 ios eas build를 하는 과정에서 nativeAppKey 환경변수를 읽어오지 못하는 상황이 계속 발생합니다. expo 대시보드의 프로젝트 환경변수에도사진과 같이 등록해놓은 상태이고, eas build --profile development --platform ios 커맨드를 실행했을때 아래와 같이 에러나 나는 상황입니다. .env를 .gitIgnore에서 잠깐 제거하고 빌드해도 동일하게 에러가 납니다..!!Failed to read the app config from the project using "npx expo config" command: npx expo config --json exited with non-zero code: 1.Falling back to the version of "@expo/config" shipped with the EAS CLI.// app.config.js[ '@react-native-kakao/core', { nativeAppKey: process.env.KAKAO_APP_KEY, android: { authCodeHandlerActivity: true, }, ios: { handleKakaoOpenUrl: true, }, }, ], ... 생략 extra: { kakaoAppKey: process.env.KAKAO_APP_KEY, router: {}, eas: { projectId: '...생략', }, },// eas.json{ "cli": { "version": ">= 16.10.0", "appVersionSource": "remote" }, "build": { "development": { "developmentClient": true, "distribution": "internal", "ios": { "simulator": true } }, "preview": { "distribution": "internal" }, "production": { "autoIncrement": true } }, "submit": { "production": {} } } // src/app/_layout.tsxuseEffect(() => { initializeKakaoSDK(Constants.expoConfig?.extra?.kakaoAppKey as string); }, []); 도움 주시면 감사하겠습니다 🙏🏻
-
미해결스프링 부트와 리액트로 구현하는 소셜 로그인
로그인 성공시
로그인 성공시defaultSuccessUrl 에서는 "/todos" 로 설정하고successHandler의 CustomLoginSuccessHandler 에서는 "/" 로 되어 있을때 어디로 리다이렉트 되어야하나요?설명에는 defaultSuccessUrl 가 우선순위라고 하셨는데, 실행해보면 / 로 갑니다.
-
미해결따라하며 배우는 리액트 네이티브 기초
강의 자료 다운
안녕하세요 강의때 사용하시는 강의 노트 자료는 어디서 다운 받으면 되나요? (설명하실 때 사용하시는 자료 문의드립니다. ) 소스코드는 다운 받기가 가능한데 강의때 사용하시는 pdf 인지는 모르겠지만어디서 다운받을 수 있나요? 만약에 없으면 강의때 링크 클릭해서 들어가시던데 그 링크는 따로 강의마다 딸려 있을까요? 답변 부탁드립니다.
-
미해결스프링 부트와 리액트로 구현하는 소셜 로그인
SocialLoginWeb1303 소스 제공해 주시면 안되나요?
SocialLoginWeb1303 소스 제공해 주시면 안되나요?
-
미해결React Native with Expo: 제로초에게 제대로 배우기
수업 관련 질문
안녕하세요 제가 지금 토이프로젝트로 8월 말까지 앱의 mvp 기능을 만들고 싶어서 expo 강좌를 수강 신청 및 수강하게 되었습니다제가 웹, 앱에 대한 지식이 전혀 없어서 gpt한테 물어보면서 진행을 해도 잘 이해하면서 하고 있지는 않은 것 같습니다 핵심개념들이 없는 것 같습니다react, ts를 공부해야 이해가 될까요 ..?
-
해결됨웹 개발자의 연봉을 올려주는 하이브리드앱 with Expo 프레임워크
"인터넷 연결을 해주세요!" 라는 메세지가 순간적으로 보이는 문제
작성하시 코드는 인터넷 연결이 정상적으로 되는 환경에서도 "인터넷 연결을 해주세요!" 라는 메세지가 보이게 되는 문제가 있는데, 실무에서는 어떻게 해결을 하시는지 궁금합니다.
-
해결됨React, Node.js, MongoDB로 만드는 나만의 회사 웹사이트: 완벽 가이드
배포 후 모바일에서 접속하면 게시판 게시글이 안보이는 문제
안녕하세요. 먼저 강의 잘 들었습니다. 다름이 아니라 배포 후 웹으로는 업무게시판의 게시글이 잘 보이는데 모바일로 접속 시에는 게시글이 없는 것으로 나옵니다.웹(개발자 도구로 모바일 디바이스 버전으로 봐도 잘 보입니다) 모바일 이유가 뭔지 궁금합니다~
-
미해결React Native with Expo: 제로초에게 제대로 배우기
TextInput 터치시 키패드에 인풋 가려짐
안녕하세요 제로초님! 모르는 부분 강의 참고하며 회사 서비스를 expo로 구현중입니다. TextInput를 터치하면 키보드에 인풋이 가려지는 현상이 있어서 해결중인 상황입니다. expo 공식문서에 나와있는 react-native-keyboard-controller 라이브러리를 사용하려고 했지만 사용하려면 pod install을 다시 해줘야돼서 prebuild가 필수적인데, ios 폴더가 생기면 네이티브 코드 관리를 잘 할 자신이 없어서.. development builds App 만으로 해결할 수 있는 방법이 있을까요?
-
미해결Next + React Query로 SNS 서비스 만들기
next.js 서버fetch 에러 fallback ui 구현 방법
next 공식문서를 살펴보면 단순 서버 fetch (서버액션x) 관련 에러 핸들링 방법은 딱히 안나와 있는 것 같아 질문드립니다.만약 SectionA, SectionB, SectionC 서버 컴포넌트 내에서 각각 서버 fetch가 일어난다 가정했을 때 SectionB에서만 요청이 실패했다면 SectionB 영역만 fallback ui를 띄우고 나머지 SectionA, SectionC는 정상적으로 데이터를 렌더링하도록 구현하는 방법이 없을까요? error-boundary 라이브러리는 클라이언트 환경에서만 사용가능해 서버 컴포넌트에선 사용할 수 없고 next 내부적으로 설계되어있는 에러 바운더리(error.js 등)는 전역에러를 캐치하는 걸로 알고있습니다. 때문에 페이지 내 특정 영역만 fallback ui를 띄우는 용도는 아닌 것 같더라구요.혹시 다른 방법이 있나 궁금합니다 감사합니다!!
-
미해결Next.js 까보기: "쓸 줄 아는 개발자"에서 "알고 쓰는 개발자"로
next.js 서버fetch 에러 fallback ui 구현 방법
next 공식문서를 살펴보면 단순 서버 fetch (서버액션x) 관련 에러 핸들링 방법은 딱히 안나와 있는 것 같아 질문드립니다.만약 SectionA, SectionB, SectionC 서버 컴포넌트 내에서 각각 서버 fetch가 일어난다 가정했을 때 SectionB에서만 요청이 실패했다면 SectionB 영역만 fallback ui를 띄우고 나머지 SectionA, SectionC는 정상적으로 데이터를 렌더링하도록 구현하는 방법이 없을까요? error-boundary 라이브러리는 클라이언트 환경에서만 사용가능해 서버 컴포넌트에선 사용할 수 없고 next 내부적으로 설계되어있는 에러 바운더리(error.js 등)는 전역에러를 캐치하는 걸로 알고있습니다. 때문에 페이지 내 특정 영역만 fallback ui를 띄우는 용도는 아닌 것 같더라구요.혹시 다른 방법이 있나 궁금합니다 감사합니다!!
-
해결됨React Native with Expo: 제로초에게 제대로 배우기
rimraf 이후 npm i 진행 하니 앱이 구동이 안됩니다.
재설치, eas build 를 다시해도 아래와 같은 에러 문구가 계속 나오네요..