.
미해결
React Native with Expo: 제로초에게 제대로 배우기
.
- react
- react-native
- 하이브리드-앱
- typescript
- expo
172만명의 커뮤니티!! 함께 토론해봐요.
미해결
React Native with Expo: 제로초에게 제대로 배우기
.
해결됨
웹 개발자의 연봉을 올려주는 하이브리드앱 with Expo 프레임워크
강의자료는 어디에 있나요? [02-05] 헤더 옵션 심화 하는데 이미지 첨부하는 자료 또는 강의에서 진행하는 소스코드를 어디서 받을 수 있는지 알려주세요.
미해결
아바타 커뮤니티앱 만들기 (React Native Expo)
서버쪽 코드의 .env 파일을 보면 JWT이 기본적으로 20분으로 설정되어 있는 것을 보았습니다. 예를 들어 JWT이 만료가 되고 이어서 진행을 하게 된다면, AuthRoute에 해당되는 경로들을 클라이언트에서는 여전히 접근이 가능하지만 서버에서 400번대를 응답합니다. 일반적으로 앱을 사용했던 경험을 생각하면 앱의 세션은 웹에 비해서 매우 길거나 백엔드에 대한 지식은 충분하지 않아 모르겠지만, 백엔드에서 새로 접속시 연장을 하는 등의 방법이 생각 나는데요 이런 경우에 클라이언트에서는 어떻게 처리를 해야하는지 아니면 실무적으로는 어떻게 처리하는 지 궁금합니다. 혹시라도 추가로 검색해서 공부할 수 있는 키워드가 있다면 알려주실 수 있을까요?
미해결
React Native with Expo: 제로초에게 제대로 배우기
로컬에서는 분명히 문제 없이 DB에 접속이 되는데 빌드를 해서 apk파일을 만들어서 안드로이드 기기에 설치를 하면 network error가 나네요 app.json 파일에 "android": { "usesCleartextTraffic": true, 이렇게 설정을 했는데도 네트워크 오류가 나는데 이것 말고 더 수정해야하는 내용이 있을까요? 환경 설정은 https://inf.run/6wYbc 여기와 동일합니다.
미해결
아바타 커뮤니티앱 만들기 (React Native Expo)
강사님, npx expo start를 입력후, a를 선택하면, 아래와 같이 에러 메시지가 나옵니다. 아래 이미지와 같이 pixel 9 pro가 정상적으로 설치되어 있는데, 뭐가 잘못된건지 모르겠어서 문의드립니다.ㅠ › Opening on Android... CommandError: No Android connected device found, and no emulators could be started automatically. Connect a device or create an emulator ( https://docs.expo.dev/workflow/android-studio-emulator ). Then follow the instructions here to enable USB debugging: https://developer.android.com/studio/run/device.html#developer-device-options . If you are using Genymotion go to Settings -> ADB, select "Use custom Android SDK tools", and point it at your Android SDK directory.
미해결
맛집 지도앱 만들기 (React Native & NestJS)
개발 환경 window node 18 기타 wifi 인터넷 환경 애뮬레이터를 띄워서 확인하고 싶은데요. npm start 안드로이드 스튜디오에서 안드로이드 애뮬레이터 실행 npm run andriod > matzip@0.0.1 android > react-native run-android info A dev server is already running for this project on port 8081. info Installing the app... > Task :app:installDebug Installing APK 'app-debug.apk' on 'Medium_Phone(AVD) - 16' for :app:debug Installed on 1 device. [Incubating] Problems report is available at: file:///C:/Users/hangy/Desktop/matzip/android/build/reports/problems/problems-report.html 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 SUCCESSFUL in 30s 58 actionable tasks: 9 executed, 49 up-to-date info Connecting to the development server... info Starting the app on "emulator-5554"... Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.matzip/.MainActivity } 애뮬레이터 반응 없이 아래 하면 표시함. 도움 부탁드립니다. 환경 설정이 되어야 진도를 나가는데. 애뮬레이터가 아무런 반응이 없네요. 좋은 강의 감사합니다.
미해결
React Native with Expo: 제로초에게 제대로 배우기
npm ls react ─┬ @expo/vector-icons@15.0.2 │ └── react@19.1.0 deduped ├─┬ @react-native-community/datetimepicker@8.4.4 │ └── react@19.1.0 deduped ├─┬ @react-navigation/bottom-tabs@7.4.9 │ └── react@19.1.0 deduped ├─┬ @react-navigation/elements@2.6.5 │ ├── react@19.1.0 deduped │ ├─┬ use-latest-callback@0.2.6 │ │ └── react@19.1.0 deduped │ └─┬ use-sync-external-store@1.6.0 │ └── react@19.1.0 deduped ├─┬ @react-navigation/native@7.1.18 │ ├─┬ @react-navigation/core@7.12.4 │ │ └── react@19.1.0 deduped │ └── react@19.1.0 deduped ├─┬ expo-font@14.0.9 │ └── react@19.1.0 deduped ├─┬ expo-image@3.0.9 │ └── react@19.1.0 deduped ├─┬ expo-linking@8.0.8 │ └── react@19.1.0 deduped ├─┬ expo-router@6.0.12 │ ├─┬ @expo/metro-runtime@6.1.2 │ │ └── react@19.1.0 deduped │ ├─┬ @radix-ui/react-slot@1.2.0 │ │ ├─┬ @radix-ui/react-compose-refs@1.1.2 │ │ │ └── react@19.1.0 deduped │ │ └── react@19.1.0 deduped │ ├─┬ @radix-ui/react-tabs@1.1.13 │ │ ├─┬ @radix-ui/react-context@1.1.2 │ │ │ └── react@19.1.0 deduped │ │ ├─┬ @radix-ui/react-direction@1.1.1 │ │ │ └── react@19.1.0 deduped │ │ ├─┬ @radix-ui/react-id@1.1.1 │ │ │ ├─┬ @radix-ui/react-use-layout-effect@1.1.1 │ │ │ │ └── react@19.1.0 deduped │ │ │ └── react@19.1.0 deduped │ │ ├─┬ @radix-ui/react-presence@1.1.5 │ │ │ └── react@19.1.0 deduped │ │ ├─┬ @radix-ui/react-primitive@2.1.3 │ │ │ ├─┬ @radix-ui/react-slot@1.2.3 │ │ │ │ └── react@19.1.0 deduped │ │ │ └── react@19.1.0 deduped │ │ ├─┬ @radix-ui/react-roving-focus@1.1.11 │ │ │ ├─┬ @radix-ui/react-collection@1.1.7 │ │ │ │ ├─┬ @radix-ui/react-slot@1.2.3 │ │ │ │ │ └── react@19.1.0 deduped │ │ │ │ └── react@19.1.0 deduped │ │ │ ├─┬ @radix-ui/react-use-callback-ref@1.1.1 │ │ │ │ └── react@19.1.0 deduped │ │ │ └── react@19.1.0 deduped │ │ ├─┬ @radix-ui/react-use-controllable-state@1.2.2 │ │ │ ├─┬ @radix-ui/react-use-effect-event@0.0.2 │ │ │ │ └── react@19.1.0 deduped │ │ │ └── react@19.1.0 deduped │ │ └── react@19.1.0 deduped │ ├─┬ @react-navigation/native-stack@7.3.28 │ │ └── react@19.1.0 deduped │ ├─┬ react-native-is-edge-to-edge@1.2.1 │ │ └── react@19.1.0 deduped │ ├── react@19.1.0 deduped │ └─┬ vaul@1.1.2 │ ├─┬ @radix-ui/react-dialog@1.1.15 │ │ ├─┬ @radix-ui/react-dismissable-layer@1.1.11 │ │ │ ├─┬ @radix-ui/react-use-escape-keydown@1.1.1 │ │ │ │ └── react@19.1.0 deduped │ │ │ └── react@19.1.0 deduped │ │ ├─┬ @radix-ui/react-focus-guards@1.1.3 │ │ │ └── react@19.1.0 deduped │ │ ├─┬ @radix-ui/react-focus-scope@1.1.7 │ │ │ └── react@19.1.0 deduped │ │ ├─┬ @radix-ui/react-portal@1.1.9 │ │ │ └── react@19.1.0 deduped │ │ ├─┬ @radix-ui/react-presence@1.1.5 │ │ │ └── react@19.1.0 deduped │ │ ├─┬ @radix-ui/react-primitive@2.1.3 │ │ │ └── react@19.1.0 deduped │ │ ├─┬ @radix-ui/react-slot@1.2.3 │ │ │ └── react@19.1.0 deduped │ │ ├─┬ react-remove-scroll@2.7.1 │ │ │ ├─┬ react-remove-scroll-bar@2.3.8 │ │ │ │ └── react@19.1.0 deduped │ │ │ ├─┬ react-style-singleton@2.2.3 │ │ │ │ └── react@19.1.0 deduped │ │ │ ├── react@19.1.0 deduped │ │ │ ├─┬ use-callback-ref@1.3.3 │ │ │ │ └── react@19.1.0 deduped │ │ │ └─┬ use-sidecar@1.1.3 │ │ │ └── react@19.1.0 deduped │ │ └── react@19.1.0 deduped │ └── react@19.1.0 deduped ├─┬ expo-status-bar@3.0.8 │ └── react@19.1.0 deduped ├─┬ expo@54.0.13 │ ├─┬ @expo/devtools@0.1.7 │ │ └── react@19.1.0 deduped │ ├─┬ expo-asset@12.0.9 │ │ └── react@19.1.0 deduped │ ├─┬ expo-keep-awake@15.0.7 │ │ └── react@19.1.0 deduped │ ├─┬ expo-modules-core@3.0.21 │ │ └── react@19.1.0 deduped │ └── react@19.1.0 deduped ├─┬ react-dom@19.1.0 │ └── react@19.1.0 deduped ├─┬ react-native-gesture-handler@2.28.0 │ └── react@19.1.0 deduped ├─┬ react-native-reanimated@4.1.3 │ └── react@19.1.0 deduped ├─┬ react-native-safe-area-context@5.6.1 │ └── react@19.1.0 deduped ├─┬ react-native-screens@4.16.0 │ ├─┬ react-freeze@1.0.4 │ │ └── react@19.1.0 deduped │ └── react@19.1.0 deduped ├─┬ react-native-web@0.21.1 │ └── react@19.1.0 deduped ├─┬ react-native-webview@13.15.0 │ └── react@19.1.0 deduped ├─┬ react-native-worklets@0.5.1 │ └── react@19.1.0 deduped ├─┬ react-native@0.81.4 │ ├─┬ @react-native/virtualized-lists@0.81.4 │ │ └── react@19.1.0 deduped │ └── react@19.1.0 deduped ├── react@19.1.0 └─┬ tosspayments-react-native@1.0.7 ├─┬ react-native-webview@11.26.1 │ └── react@19.1.0 deduped └── react@19.1.0 deduped npm ls react-native ├─┬ @expo/vector-icons@15.0.2 │ └── react-native@0.81.4 deduped ├─┬ @react-native-community/datetimepicker@8.4.4 │ └── react-native@0.81.4 deduped ├─┬ @react-navigation/bottom-tabs@7.4.9 │ └── react-native@0.81.4 deduped ├─┬ @react-navigation/elements@2.6.5 │ └── react-native@0.81.4 deduped ├─┬ @react-navigation/native@7.1.18 │ └── react-native@0.81.4 deduped ├─┬ @types/react-native@0.72.8 │ └─┬ @react-native/virtualized-lists@0.72.8 │ └── react-native@0.81.4 deduped ├─┬ expo-constants@18.0.9 │ └── react-native@0.81.4 deduped ├─┬ expo-file-system@19.0.17 │ └── react-native@0.81.4 deduped ├─┬ expo-font@14.0.9 │ └── react-native@0.81.4 deduped ├─┬ expo-image@3.0.9 │ └── react-native@0.81.4 deduped ├─┬ expo-linking@8.0.8 │ └── react-native@0.81.4 deduped ├─┬ expo-router@6.0.12 │ ├─┬ @expo/metro-runtime@6.1.2 │ │ └── react-native@0.81.4 deduped │ ├─┬ @react-navigation/native-stack@7.3.28 │ │ └── react-native@0.81.4 deduped │ ├─┬ react-native-is-edge-to-edge@1.2.1 │ │ └── react-native@0.81.4 deduped │ └── react-native@0.81.4 deduped ├─┬ expo-status-bar@3.0.8 │ └── react-native@0.81.4 deduped ├─┬ expo-symbols@1.0.7 │ └── react-native@0.81.4 deduped ├─┬ expo-system-ui@6.0.7 │ └── react-native@0.81.4 deduped ├─┬ expo-web-browser@15.0.8 │ └── react-native@0.81.4 deduped ├─┬ expo@54.0.13 │ ├─┬ @expo/cli@54.0.11 │ │ └── react-native@0.81.4 deduped │ ├─┬ @expo/devtools@0.1.7 │ │ └── react-native@0.81.4 deduped │ ├─┬ expo-asset@12.0.9 │ │ └── react-native@0.81.4 deduped │ ├─┬ expo-modules-core@3.0.21 │ │ └── react-native@0.81.4 deduped │ └── react-native@0.81.4 deduped ├─┬ react-native-daum-postcode@1.0.11 │ └── react-native@0.81.4 deduped ├─┬ react-native-gesture-handler@2.28.0 │ └── react-native@0.81.4 deduped ├─┬ react-native-reanimated@4.1.3 │ └── react-native@0.81.4 deduped ├─┬ react-native-safe-area-context@5.6.1 │ └── react-native@0.81.4 deduped ├─┬ react-native-screens@4.16.0 │ └── react-native@0.81.4 deduped ├─┬ react-native-webview@13.15.0 │ └── react-native@0.81.4 deduped ├─┬ react-native-worklets@0.5.1 │ └── react-native@0.81.4 deduped ├─┬ react-native@0.81.4 │ └─┬ @react-native/virtualized-lists@0.81.4 │ └── react-native@0.81.4 deduped └─┬ tosspayments-react-native@1.0.7 ├─┬ react-native-send-intent@1.3.0 │ └── react-native@0.81.4 deduped ├─┬ react-native-webview@11.26.1 │ └── react-native@0.81.4 deduped └── react-native@0.81.4 deduped npm ls expo ├─┬ @react-native-community/datetimepicker@8.4.4 │ └── expo@54.0.13 deduped ├─┬ expo-constants@18.0.9 │ └── expo@54.0.13 deduped ├─┬ expo-dev-client@6.0.15 │ ├─┬ expo-dev-launcher@6.0.15 │ │ └── expo@54.0.13 deduped │ ├─┬ expo-dev-menu-interface@2.0.0 │ │ └── expo@54.0.13 deduped │ ├─┬ expo-dev-menu@7.0.14 │ │ └── expo@54.0.13 deduped │ ├─┬ expo-manifests@1.0.8 │ │ └── expo@54.0.13 deduped │ ├─┬ expo-updates-interface@2.0.0 │ │ └── expo@54.0.13 deduped │ └── expo@54.0.13 deduped ├─┬ expo-file-system@19.0.17 │ └── expo@54.0.13 deduped ├─┬ expo-font@14.0.9 │ └── expo@54.0.13 deduped ├─┬ expo-haptics@15.0.7 │ └── expo@54.0.13 deduped ├─┬ expo-image-manipulator@14.0.7 │ ├─┬ expo-image-loader@6.0.0 │ │ └── expo@54.0.13 deduped │ └── expo@54.0.13 deduped ├─┬ expo-image-picker@17.0.8 │ └── expo@54.0.13 deduped ├─┬ expo-image@3.0.9 │ └── expo@54.0.13 deduped ├─┬ expo-router@6.0.12 │ ├─┬ @expo/metro-runtime@6.1.2 │ │ └── expo@54.0.13 deduped │ └── expo@54.0.13 deduped ├─┬ expo-secure-store@15.0.7 │ └── expo@54.0.13 deduped ├─┬ expo-splash-screen@31.0.10 │ ├─┬ @expo/prebuild-config@54.0.5 │ │ └── expo@54.0.13 deduped │ └── expo@54.0.13 deduped ├─┬ expo-symbols@1.0.7 │ └── expo@54.0.13 deduped ├─┬ expo-system-ui@6.0.7 │ └── expo@54.0.13 deduped ├─┬ expo-web-browser@15.0.8 │ └── expo@54.0.13 deduped └─┬ expo@54.0.13 ├─┬ @expo/cli@54.0.11 │ └── expo@54.0.13 deduped ├─┬ @expo/metro-config@54.0.6 │ └── expo@54.0.13 deduped ├─┬ babel-preset-expo@54.0.4 │ └── expo@54.0.13 deduped ├─┬ expo-asset@12.0.9 │ └── expo@54.0.13 deduped └─┬ expo-keep-awake@15.0.7 └── expo@54.0.13 deduped 버전을 알려주시면 질문자분과 동일한 환경에서 답변 드릴 수 있습니다. npx expo run:android 로 apk파일을 만들었는데 안드로이드 기기에서 파일을 실행하면 expo go가 설치가 되서 실행이 됩니다. apk 파일을 받아서 설치하면 바로 앱이 실행되게 할 수 있는 파일을 만들어서 다른 장소에 있는 기기에서 테스트를 하려면 어떻게 해야할까요?
미해결
React Native with Expo: 제로초에게 제대로 배우기
.
미해결
React Native with Expo: 제로초에게 제대로 배우기
.
미해결
아바타 커뮤니티앱 만들기 (React Native Expo)
optimistic-updates#updating-a-single-todo 문서를 보면 useMutation - onError의 모든 parameter err, newPost (variables), onMutationResult, context와 onSettle의 모든 parameter를 사용해서 구현하는데, client를 queryClient를 가져와서 쓰는 강의 중 예제와, 문서 내의 내용으로 구현한 아래의 주석처리된 구현은 어떤 차이가 있을까요? onError: (err, newPost, context) => { queryClient.setQueryData( [queryKeys.POST, queryKeys.GET_POST, context?.newPost?.id], context?.previousPost, ); }, // onError: (err, newPost, onMutationResult, context) => { // context.client.setQueryData( // [ // queryKeys.POST, // queryKeys.GET_POST, // onMutationResult?.previousPost?.id, // ], // onMutationResult?.previousPost, // ); // }, onSettled: (data, error, variables, context) => { queryClient.invalidateQueries({ queryKey: [queryKeys.POST, queryKeys.GET_POST, variables], }); queryClient.invalidateQueries({ queryKey: [queryKeys.POST, queryKeys.GET_POSTS], }); }, // onSettled: (data, error, variables, onMutationResult, context) => { // context.client.invalidateQueries({ // queryKey: [queryKeys.POST, queryKeys.GET_POST, variables], // }); // context.client.invalidateQueries({ // queryKey: [queryKeys.POST, queryKeys.GET_POSTS], // }); // }, a
미해결
React Native with Expo: 제로초에게 제대로 배우기
npx expo install expo-blur 실행 후 <BlurView> 컴포넌트를 사용하려고 하는데 런타임에서는 에러가 안지만 화면에서 위같이 unimplement 에러가 납니다. tsconfig를 수정해야 해결된다고 찾긴 했는데 { "extends": "expo/tsconfig.base", "compilerOptions": { "strict": true, "paths": { "@/*": [ "./*" ] } }, "include": [ "**/*.ts", "**/*.tsx", ".expo/types/**/*.ts", "expo-env.d.ts" ] } 아래는 제 루트 tsconfig.json 파일입니다. 어떻게 수정하면 될까요?
미해결
React Native with Expo: 제로초에게 제대로 배우기
.
미해결
React Native with Expo: 제로초에게 제대로 배우기
.
미해결
React Native with Expo: 제로초에게 제대로 배우기
.
미해결
React Native with Expo: 제로초에게 제대로 배우기
.
미해결
아바타 커뮤니티앱 만들기 (React Native Expo)
ios 26부터 headerLeft 주위에 그림자가 생기고 클릭시 안에 내용이 커지는 효과가 생기는데 없앨 수 있는 방법이 있을까요? 열심히 검색해봐도 쉽지 않네요 ㅎㅎ,,
미해결
React Native with Expo: 제로초에게 제대로 배우기
맥북 환경에서 수업을 따라가다 보니, Java가 설치되어 있지 않아 라이브러리 설치 시 오류가 발생했습니다. 이처럼 개발 환경(운영체제, 설치 여부 등)에 따라 발생하는 오류는 실무에서는 어떻게 사전에 파악하고, 배포 시에는 어떻게 대응하는지 궁금합니다.
미해결
아바타 커뮤니티앱 만들기 (React Native Expo)
안녕하세요! 이제 절반 이상 수강중인 열혈 수강생입니다 !! 다름이 아니고, 올해, 어플 배포가 목표인데요 아바타 이미지는 저작권이 있기에 모두 제거하고 자체 제작으로 이미지 파일을 구성하여 다시 추가하려 합니다. 인강을 다 듣고 나서 제 아이디어를 첨가하고 아바타 이미지만 바꿔 출시해도 되는 부분일까요?
미해결
React Native with Expo: 제로초에게 제대로 배우기
질문은 아닌데..챌린지 미션에 질문하기가 있어서 쓰니까 신경쓰지 말아주세요... Link Share 공유 url은 components/Post.tsx에 있음 공식문서: share 부분 확인 ios에서는 url을 같이 넣어주면 좋고, 안드로이드에서는 title을 넣어주면 좋음 File Share expo-sharing 라이브러리 설치 후 사용 폰에 있는 파일을 다른 앱에 공유 가능 다른 앱에서 내 expo앱으로 공유하고 싶을 때 expo기본지원x Expo Share Extension이라는 외부 라이브러리를 따로 설치해서 사용해야 함 근데 npm run prebuild를 해야하는데, 이럼 expo-go에서 벗어나 native단을 건듦 한번 설치하면 못돌아옴
미해결
React Native with Expo: 제로초에게 제대로 배우기
혹시 ios나 android 네이티브 빌드해서 연동하는 방법도 해당 강의에서 진행하나요? 현재 25강을 듣고 있긴 한데... 들으면 들을수록 네이티브쪽도 건들어야하는 것 같아서 질문드립니다! 혹시나 해당 강의가 포함되어있으면 몇 강인지 말씀주실 수 있으신가요? 또... 스위프트, 코틀린 말고 자바나 오브젝티브씨도 같이 알아야하나요?