- [React Native] 크립토 앱 튜토리얼2024년 05월 13일 09시 20분 11초에 업로드 된 글입니다.작성자: DandyNow728x90반응형
양동준 님의 "만들면서 배우는 리액트네이티브 - 크립토 앱"을 실습해 보면서 기억해둬야 할 내용을 작성해 보았다. 기록된 내용은 영상에서 얻은 정보도 있지만-영상에 없는-검색을 통해 얻은 정보도 있다.
😉 참고한 영상 : https://youtu.be/sbTih9S8wNw?feature=shared
1. 프로젝트 실행 명령
-c 옵션을 이용하면 실행하면서 캐시를 삭제할 수 있다. Android Virtual Device(AVD)를 사용하면서 오작동을 많이 경험했다. 캐시를 삭제하면서 실행하는 방식과 함께 개발하지 않을 때는 프로젝트를 종료시켜 두는 것으로 오작동을 줄 일 수 있었다.
npx expo start -c
😉 expo 프로젝트 생성 : https://docs.expo.dev/tutorial/create-your-first-app/
2. 반응형 UI
UI 요소를 완전히 반응적으로 코딩할 수 있도록 2가지 간단한 방법을 제공하는 작은 라이브러리, 미디어 쿼리를 사용하지 않아도 된다. wp(), hp()를 이용해 화면 비율로 UI 요소를 제어할 수 있어서 매우 편리하다.
npx expo install react-native-responsive-screen
3. 아이콘
expo에서 제공하는 아이콘을 편리하게 사용할 수 있다.
npm i @expo/vector-icons
😉 아이콘 검색 페이지 : https://icons.expo.fyi/Index
4. 캐로우셀
npx expo install react-native-pager-view
5. 차트
주식에서 사용하는 캔들 차트가 제공되고 있었다.
npm install react-native-wagmi-charts
😉 react-native-wagmi-charts : https://www.npmjs.com/package/react-native-wagmi-charts
검색을 통해 다른 차트도 발견했는데 일반적으로 사용하기에 좋아 보였다.
npx expo install react-native-gifted-charts expo-linear-gradient react-native-svg
😉 react-native-gifted-charts : https://www.npmjs.com/package/react-native-gifted-charts
6. toPrecision, toFixed의 차이
전자는 수의 길이 제한, 후자는 소수점 자릿수 제한한다. 영상에서는 소수점 2자리까지 표현하기 위해 toPrecision를 사용했는데 toFixed가 의도에 더 맞다고 생각했다.
7. Troubleshooting
7.1. FlatList 스크롤 안될 경우
부모 스타일 속성에 flex: 1 추가한다.
7.2. ERROR Invariant Violation: "main" has not been registered.
Error: Exception in HostFunction: expected 0 arguments, got 1, js engine: hermes
ERROR Invariant Violation: "main" has not been registered. This can happen if:실습 중 차트 라이브러리를 추가하면서 위와 같은 에러를 만나게 되었다. 해결 방법은 react-native-reanimated를 설치하고 babel.config.js 파일에 plugin을 추가하면 된다.
npx expo install react-native-reanimated
// babel.config.js module.exports = function (api) { api.cache(true); return { presets: ["babel-preset-expo"], plugins: ["react-native-reanimated/plugin"], // 추가 }; };
😉 참고한 자료 : https://velog.io/@bje0416/ERROR-Invariant-Violation-main-has-not-been-registered
728x90반응형'언어·프레임워크 > React Native' 카테고리의 다른 글
[React Native] 카카오맵 연동을 위한 webview 설치, React 개발자 도구 사용 (0) 2024.05.23 댓글