묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨배달앱 클론코딩 [with React Native]
[맥 전용] 애플 개발자 계정만들기 부분에서, identifiers 누락 부분 질문
[맥 전용] 애플 개발자 계정만들기 강의 파트에서 누락된 부분이 있어서, 이게 누락된건지 아니면 제가 빠뜨렸거나 다른 부분에서 있었던 내용인가 해서 질문올립니다~!certificates 부분 만들고, 6:42초 부분에 Profiles로 넘어가시는데, 6:53초부분에 AppID에 저는 fooddeliveryapp ID가 셀렉트 메뉴에 안뜨더라고요.그래서 검색해 보니 Identifiers 부분도 등록해야 프로파일 등록이 정상적으로 되는것 같던데, Identifiers 부분은 혹시 이 섹션 말고 다른 파트의 강의에서 나왔던 부분인가요? 현재는 이 부분은 강의에서 빠져 있네요Identifiers 등록 없이는 Profiles 등록이 안되는 것 같아 현재 구글의 다른 블로그 레퍼런스 검색해서 등록하려고 하는데,, 혹시 제가 다른 강의 파트서 나왔는데 누락했다면 그 강의 보고 다시 따라하려 합니다. 감사합니다
-
해결됨비전공자를 위한 진짜 입문 올인원 개발 부트캠프
javascript 연습문제
javascript 연습문제를 더 풀어보고 싶은데 연습문제만 있는 곳이 있나요?
-
미해결배달앱 클론코딩 [with React Native]
React Native 소셜 로그인 관련 질문드립니다.
보통 RN에서 소셜 로그인을 하면 access token과 refresh token을 받아올 수 있는데, 이후 어떻게 해야할지 모르겠습니다..예를들어 kakao 로그인을 구현하여 토큰을 받는데 성공했는데, 이제 서버와 통신을 할 때 주로 어떤 방법으로 구현될까요?
-
미해결배달앱 클론코딩 [with React Native]
네이버맵 연동하기_build는 되는데 앱이 강제종료되는 현상
인프런 오류 때문에 코드블럭으로 에러가 올라가지 않아서 이미지로 대체합니다.모든 세팅을 마치고 npm run android로 빌드를 하면 앱이 바로 강제종료 됩니다.package.json "dependencies": { "@react-native-async-storage/async-storage": "^1.18.2", "@react-navigation/bottom-tabs": "^6.0.9", "@react-navigation/native": "^6.0.6", "@react-navigation/native-stack": "^6.2.5", "@reduxjs/toolkit": "^1.9.5", "axios": "^1.4.0", "react": "17.0.2", "react-native": "0.66.4", "react-native-config": "^1.5.1", "react-native-encrypted-storage": "^4.0.3", "react-native-keyboard-aware-scrollview": "^2.1.0", "react-native-nmap": "^0.0.66", "react-native-safe-area-context": "^3.3.2", "react-native-screens": "^3.10.1", "react-redux": "^8.1.1", "redux-flipper": "^2.0.2", "socket.io-client": "^4.7.0" }, "devDependencies": { "@babel/core": "^7.12.9", "@babel/runtime": "^7.12.5", "@react-native-community/eslint-config": "^2.0.0", "@types/jest": "^26.0.23", "@types/react-native": "^0.66.4", "@types/react-test-renderer": "^17.0.1", "@typescript-eslint/eslint-plugin": "^5.7.0", "@typescript-eslint/parser": "^5.7.0", "babel-jest": "^26.6.3", "eslint": "^7.14.0", "jest": "^26.6.3", "metro-react-native-babel-preset": "^0.66.2", "react-test-renderer": "17.0.2", "typescript": "^4.4.4" }, "resolutions": { "@types/react": "^17" },
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
다 잘되는데 배너 슬라이드가 안돼요
배너 슬라이드 기능만 잘 되지 않습니다.최신 버전 강의 따라 하였습니다....
-
해결됨비전공자를 위한 진짜 입문 올인원 개발 부트캠프
강의 5분경 내용인 "메인 페이지" 글자가 뜨지 않습니다.
이전 메인페이지가 뜨지 않는다는 질문과 답변들을 통해 App.js파일과 index.js 파일 상단에 import React from 'react'; 를 넣기도 해보고 node와 npm 삭제 > 재설치 후 진행해 보아도 메인페이지에 글자가 뜨지 않아 질문드립니다ㅜㅜ또한 각 파일의 vscode내 터미널 로그를 보아도 딱히 에러가 보이지 않아 문의드립니다..!
-
해결됨배달앱 클론코딩 [with React Native]
remote push notification이 포그라운드에서 팝업되지 않아요
핸드폰 상단바에서 알림 표시만 되고 알림 팝업은 되지 않습니다.localNotification을 활용해서 팝업시켜 봤지만 그렇게 될 경우 onNotification과 함께 중복된 알람 2개가 동시에 옵니다.그리고 상단바를 열어서 localNotification으로 온 알람을 press하게 되면 데이터가 빈 오브젝트로 넘어와서 Screen Navigate를 하지 못합니다.(onNotification로 발생하는 알림에서만 데이터를 활용할 수 있는 상황입니다)결론은 onNotification로 온 알림이 팝업되어서 press를 하면 해당 화면을 이동시키는게 최종 목적이고현재 포그라운드에서 알림 팝업이 안되는 이슈를 해결하고 싶습니다..계속 찾아봐도 답을 못 찾겠어서 질문 남깁니다!// AndroidManifest.xml <meta-data android:name="com.dieam.reactnativepushnotification.notification_foreground" android:value="true"/> <!-- Change the resource name to your App's accent color - or any other color you want --> <meta-data android:name="com.dieam.reactnativepushnotification.notification_color" android:resource="@color/white"/> <!-- or @android:color/{name} to use a standard color --> <receiver android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationActions" /> <receiver android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationPublisher" /> <receiver android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationBootEventReceiver" android:exported="true"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> <action android:name="android.intent.action.QUICKBOOT_POWERON" /> <action android:name="com.htc.intent.action.QUICKBOOT_POWERON"/> </intent-filter> </receiver> <service android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationListenerService" android:exported="false" > <intent-filter> <action android:name="com.google.firebase.MESSAGING_EVENT" /> </intent-filter> </service> // App.tsx PushNotification.configure({ onNotification: function (notification: any) { PushNotification.localNotification({ message: notification.message, title: notification.title, channelId: 'channel_general', }) } }) PushNotification.createChannel( { channelId: 'channel_general', channelName: '앱', }, (created: boolean) => console.log(`createChannel returned '${created}'`), );
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
따로 커밋을 하거나 재배포를 하지 않았는데, DB가 자동으로 초기화 됩니다.
fly.io에 server 프로젝트를 deploy 단계까지 마쳤다.web 프로젝트까지 배포가 완료 되어 모든 동작이 잘 이뤄지고 있다.하지만, 일정 시간이 지나면 자동으로 fly.io에 배포된 DB가 초기화가 된다.초기화가 된 것인지, local의 데이터가 자동 업로드 되면서 덮어씌여진 것인지는 잘 모르겠다.이전 질문의 답변을 보면, Commit을 하면서 fly.io가 자동으로 덮어씌여진다는 것을 보았다.-> 하지만, 실험 결과 Commit을 따로 하지 않아도 초기화가 된다.만약 git과 연관이 있다면6-1. 배포 이후 별다른 작업을 하지 않았지만, 일정시간이 지나면, vercel와 같이 자동으로 git의 repository 최신 내용 바탕으로 업데이트 되어, git에 이미 올라가 있던 DB가 fly.io에 반영이 되는것인가가 궁금합니다.6-2. 또한, 그렇다면 애초에 vercel은 레포지토리 주소를 참고하여 배포하였다면, fly.io는 그저 플랫폼 로그인 수단으로만 git을 연동하였는데, 최신 커밋을 참고하는 기능이 있는지도 궁금합니다.결론적으로 현재 반복적으로 DB가 초기화 되는 현상을 고치고 싶습니다. 추가적인 실험 결과, 로컬의 nodemon server.js가 돌고 있는 server 프로젝트를 종료를 하여도, 일정 시간이 지나면 fly.io의 DB가 초기화 되는 것으로 보아, server의 내용이 바뀌면서 자동으로 로컬 내용이 fly.io로 넘어가는 것도 아닌 것 같습니다.
-
해결됨비전공자를 위한 진짜 입문 올인원 개발 부트캠프
왜 src폴더 위치에서 images가 불러와 지는 지 모르겠습니다
<img src="images/icons/logo.png" /> 만으로 사진이 불러와 지는데요 엄밀히 따지면 images 파일은 public 폴더 아래 있으니<img src="../public/images/icons/logo.png" /> 처럼 상위 폴더로 이동 후 public에서 images에 접근할 수 있는 것 아닌가요?
-
해결됨비전공자를 위한 진짜 입문 올인원 개발 부트캠프
destructuring 사용하지 않았을 때는 어떻게 코드를 작성해야 하나요?
destructuring을 사용하지 않고 const로 time과 setTime을 정의해서 해봤는데요, 이때는 브라우저에서 클릭을 해도 0초에서 1초로 바뀌지 않습니다. 어떤 부분이 문제인가요?React.useState(0) 뒤에 인덱스 값을 잘못 붙인 건가요?
-
해결됨비전공자를 위한 진짜 입문 올인원 개발 부트캠프
return 후 소괄호가 필수인가요
소괄호를 붙여 해결은 했습니다만, return 뒤에 소괄호를 붙이지 않았을 때 unreachable-code라며 코드가 투명하게 보이고 react app 사이트에도 반영되지 않았는데요 소괄호가 필수인지 궁금합니다참고로 return직후 세미콜론은 저장했더니 자동으로 붙었습니다.
-
해결됨비전공자를 위한 진짜 입문 올인원 개발 부트캠프
콘솔로그가 두번씩 찍힙니다
버튼을 한 번씩 누를 때마다 콘솔창에 콘솔로그가 2번씩 찍히는데 왜 이런 건가요?
-
해결됨비전공자를 위한 진짜 입문 올인원 개발 부트캠프
로그 이미지 주소 중 절대 경로 원리에 관한 질문
본 강의 중 로그가 나오지 않는 이슈에 관하여경로 설정에 문제가 있다고 하셨고, grab_market_web/src/App.js의 내용 중 로그 src의 경로를"./imgages/icons/log.png"에서 -> "/imgages/icons/log.png"으로 변경하라고 하였습니다. 작동은 잘 되는데, 작동 원리가 궁금합니다./ 절대값 root경로의 시작은 어디로 설정되어 있나요?이전에는 메인 화면에서는 ./ 상대 경로 중, 현재 경로로 설정되어 있었는데 잘 작동했던 이유도 궁금합니다.App.js파일의 내용이니까 App.js가 존재하는 grab_market_web/src 디렉토리가 현재 경로라고 이해되는데,그보다 상위 디렉토리에 존재하는 grab_market_web/public이 ./ 현재 경로로 인식되어grab_market_web/public/images가 호출 되는 것도 이해가 잘 되지 않으며/ 절대 경로로 설정시에도grab_market_web/public/images가 호출되는 것이 잘 이해가 되지 않습니다.
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
맥북 터미널에서 node-v 입력시 나오는 오류
안녕하세요 그랩님!혹시 영상 4:56쯤 단계부터 오류가 떠 다른 분들의 질문과 그랩님 답변도 보고 이것저것 시도해 보았으나 해결이 안되어 질문드립니다ㅜㅜ 혹시 아래의 오류가 제가 지금 사용하는 맥북이 2017년 버전(10.13.1)으로 시스템 업그레이드를 한지 오래되었기 때문에 뜨는걸까요..? 맥에서 지원하는 최신 시스템 업그레이드를 하려면외장하드 구입 후 컴퓨터 내 백업을 준비 후에 OS 삭제>재설치>백업복원 까지 진행해야 하기에 하기 오류가 컴퓨터 백업과 OS 재설치 없이도 해결이 가능할지 혹시 아실까 하여 문의드립니다ㅜㅜ
-
미해결배달앱 클론코딩 [with React Native]
SK open API홈페이지 리뉴얼 후 sdk 받는 경로를 못찾겠습니다ㅜ
SK open API홈페이지 리뉴얼 후 sdk 받는 경로를 못찾겠습니다ㅜ
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
결과값이 한개만 나오는것 관련 문의
안녕하세요 그랩님! 처음 질문드려봅니다ㅜㅜ혹시 하기와 같이 코드를 작성했는데 결과값이 계속 농구공 배열 한개로만 나와서.. 다른분들 질문해주신 부분을 살펴봐도 동일한 질문이 없어 문의드립니다! 어떤부분 수정이 필요할지 피드백 부탁드려도 될까요ㅠㅠ
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
sqlite 데이터 삭제가 안됩니다...ㅠ
강의에서는 레코드삭제 버튼이 생겨서 데이터를 지울 수 있었는데, 제가 할 때는 생성되지 않아 지울 수가 없었습니다.SQL 실행에서 명령어를 넣어보려 해도 에러가 뜹니다. 어떻게 하면 데이터를 지울 수 있나요?
-
미해결핸즈온 리액트 네이티브
nanoid 생성 에러
안녕하세요? nanoid를 생성할 때 에러가 발생합니다.import "react-native-get-random-values"; import { nanoid } from "nanoid";를 이용하여 nanoid를 생성할 때 1번째 까지는 정상적으로 생성되나 2번째부터const id = nanoid();위의 생성 부분에서 ERROR TypeError: undefined is not a function, js engine: hermes 에러가 발생합니다.대신 나노id를 non-secure로 생성하면 계속해서 생성해도 문제 없이 생성됩니다. 버전은 아래와 같습니다만 react-native-get-random-values는 1.9.0 버전으로변경해도 동일한 문제가 발생합니다.버전 정보 "dependencies": { "@react-navigation/native": "^6.1.6", "@react-navigation/native-stack": "^6.9.12", "expo": "~48.0.15", "expo-status-bar": "~1.4.4", "expo-updates": "~0.16.4", "nanoid": "^4.0.2", "prop-types": "^15.8.1", "react": "18.2.0", "react-native": "0.71.8", "react-native-get-random-values": "~1.8.0", "react-native-safe-area-context": "4.5.0", "react-native-screens": "~3.20.0" },이 문제가 반드시 짚고 넘어가야하는 부분인가요? 별로 중요하지 않으면 그냥 비보안 모드나 uuid를 사용하는걸로 넘어가고싶은데 답변 부탁드립니다.감사합니다.
-
미해결
expo 사진 불러오기 문제
안녕하세요 처음으로 질문글 작성합니다.현재 React-Native, Expo, TypeScript 환경에서 개발을 진행 중입니다.'expo-media-library' 를 사용하여 직접 갤러리를 구현했습니다.여기서 생기는 문제가 사용자가 사진 권한이 선택한 사진인 경우 이런 팝업을 노출하게 됩니다."사용자의 사진에 접근하려고 합니다." 라는 IOS 시스템 팝업에서"더 많은 사진 선택…"을 선택하여 추가적으로 사진을 선택 시 추가된 사진을 불러오고 싶습니다.현재 제 코드에서const requestMediaLibraryPermissions = async () => { const { status } = await MediaLibrary.requestPermissionsAsync(); if (status !== 'granted') { console.log('Media library permission denied'); Linking.openSettings(); return; } fetchPhotos(); }; useEffect(() => { requestMediaLibraryPermissions(); }, []); 이런 식으로 권한 확인 후 사진을 불러오고 있습니다.이러한 코드 때문에 처음에는 권한이 허용되어 있는 사진을 잘 불러오지만 IOS 시스템 팝업에서 "더 많은 사진 선택…"을 통해 선택된 사진은 불러오지 못 하고 있습니다.해결할 수 있는 방법 조언 주시면 감사하겠습니다.
-
미해결따라하며 배우는 리액트 네이티브 기초
BottomTabScreen 관련 질문입니다.
import {createBottomTabNavigator} from '@react-navigation/bottom-tabs'; import {createNativeStackNavigator} from '@react-navigation/native-stack'; import React from 'react'; import Home from './src/screens/Home'; import Search from './src/screens/Search'; import Profile from './src/screens/Profile'; import Activity from './src/screens/Activity'; import {NavigationContainer} from '@react-navigation/native'; import Status from './src/screens/Status'; import FriendProfile from './src/screens/FriendProfile'; import EditProfile from './src/screens/EditProfile'; const App = () => { const Stack = createNativeStackNavigator(); const Tab = createBottomTabNavigator(); const BottomTabScreen = () => { return ( <Tab.Navigator screenOptions={() => ({ tabBarHideOnKeyboard: true, // tabBarShowLabel: false, headerShown: false, tabBarStyle: { height: 70, }, })}> <Tab.Screen name="Home" component={Home} /> <Tab.Screen name="Search" component={Search} /> <Tab.Screen name="Activity" component={Activity} /> <Tab.Screen name="Profile" component={Profile} /> </Tab.Navigator> ); }; return ( <NavigationContainer> <Stack.Navigator screenOptions={{headerShown: false}}> <Stack.Screen name="Bottom" component={BottomTabScreen} /> <Stack.Screen name="Status" component={Status} /> <Stack.Screen name="FriendProfile" component={FriendProfile} /> <Stack.Screen name="EditProfile" component={EditProfile} /> </Stack.Navigator> </NavigationContainer> ); }; export default App; 강의 내용과 같이 App 컴포넌트 안에서BottomTabScreen 컴포넌트를 선언하면 "Do not define components during render." 라는경고문이 뜹니다. 그래서 아래와 같이 코드를 수정하였는데App 컴포넌트 바깥에서 이렇게 선언해도 문제가 없는건가요?import {createBottomTabNavigator} from '@react-navigation/bottom-tabs'; import {createNativeStackNavigator} from '@react-navigation/native-stack'; import React from 'react'; import Home from './src/screens/Home'; import Search from './src/screens/Search'; import Profile from './src/screens/Profile'; import Activity from './src/screens/Activity'; import {NavigationContainer} from '@react-navigation/native'; import Status from './src/screens/Status'; import FriendProfile from './src/screens/FriendProfile'; import EditProfile from './src/screens/EditProfile'; const Stack = createNativeStackNavigator(); const Tab = createBottomTabNavigator(); const BottomTabScreen = () => { return ( <Tab.Navigator screenOptions={() => ({ tabBarHideOnKeyboard: true, // tabBarShowLabel: false, headerShown: false, tabBarStyle: { height: 70, }, })}> <Tab.Screen name="Home" component={Home} /> <Tab.Screen name="Search" component={Search} /> <Tab.Screen name="Activity" component={Activity} /> <Tab.Screen name="Profile" component={Profile} /> </Tab.Navigator> ); }; const App = () => { return ( <NavigationContainer> <Stack.Navigator screenOptions={{headerShown: false}}> <Stack.Screen name="Bottom" component={BottomTabScreen} /> <Stack.Screen name="Status" component={Status} /> <Stack.Screen name="FriendProfile" component={FriendProfile} /> <Stack.Screen name="EditProfile" component={EditProfile} /> </Stack.Navigator> </NavigationContainer> ); }; export default App;