create-expo 명령어 https://docs.expo.dev/more/create-expo/ Ex. 52beta 순수 expo 앱 (2024년 10월 30일 기준 최신 버전 sync with RN 0.76)yarn create expo-app --template default@betayarn create expo-app --template bare-minimum@beta https://reactnative.dev/docs/getting-started-without-a-framework여전히 expo framework 없이 react-native cli 를 사용해서 프로젝트를 생성하고 싶다면 다음과 같이 사용 npx @react-native-community/cli@latest init RN76Sa..
https://reactnative.dev/docs/animations#tracking-gestures https://m.blog.naver.com/armigar/221930494683 Animated.Value 를 useRef 사용하여 변수로 잡고 Animated.timing, Animated.spring ... 와 같은 것으로 값을 변경하여 해당 Animated.View 와 같은 것의 style 에 셋팅한 Animated.Value 값을 변화시켜 애니메이션을 통해 움직이게 할 수 있다. 그리고 또한 Animated.View 같은 것은 사용자 제스쳐에도 움직이는데 그것의 이벤트에 Animated.Value 를 셋팅해주면 또한 트래킹이 가능하다. 그래서 스크롤 뷰 페이저 같은걸 구현.
yarn add @react-native-firebase/app @react-native-firebase/messaging @notifee/react-native 설치시 이슈 1. The Swift pod `FirebaseCoreInternal` depends upon `GoogleUtilities`, which does not define modules. To opt into those targets generating module maps (which is necessary to import them from Swift when building as static libraries), you may set `use_modular_headers!` globally in your Podfile, or sp..
iOS : AutoResizing, AutoLayout, SwiftUI, UIKit iOS 의 선언형 UI 로는 Swift UI 가 있다. 가장 일반적인 것은 스토리보드를 이용하는 것. 스토리보드로 하는 것을 숙지했다면 iOS 에서 기본 제공하는 코드로만 UI 짜는 방법을 학습하면 된다. 그리고 스냅킷 같은 써드파티는 검색하면서 컨셉 알아가면서 사용하면 된다. 스토리보드 vs 코드 vs 스냅킷... 이런 쉐어는 거의 3:3:3 으로 비슷하다. 프로젝트 별로 사용 여부에 따라 따라가면 된다. 스토리보드를 아예 안 쓸 수도 있고 화면전환만 안쓸 수도 있고 오토레이아웃을 안 쓸 수도 있고 모든 것이 선택사항이다. 스토리보드를 안쓰면 코드 타이핑 할 때 마다 디자인이 화면에 반영이 안되서 보고 싶을 때마다 빌드..
https://typeofnan.dev/fix-the-maximum-update-depth-exceeded-error-in-react/ state 를 useEffect 안에서 setState 하면 무한렌더링 일어날 수 있다. [] 가 되도록 views 를 의존성 배열에서 제거하자. function App() { const [views, setViews] = useState(0); useEffect(() => { setViews(views + 1); }, [views]); return Some content; } function App() { const [views, setViews] = useState(0); useEffect(() => { setViews((v) => v + 1); }, []); ret..
React Native 는 React 의 철학 중 Learn once, Write everywhere 에 맞게 모바일 앱 개발에 있어서도 View 단의 라이브러리를 제공하고 이를 중간에서 연결해주는 브릿징 기술을 제공한다. React Native 는 Android 와 iOS 의 네이티브 모듈의 기능을 가져와 사용할 수 있다. (다른 OS 도 가능하다) 이러한 기능을 제공하는 것이 NativeModules 이며 이는 iOS 에서는 RCTBridgeModule 이라는 프로토콜을 구현한 Objective-C 클래스이다. 아직 타입이라던가 지원이 잘 안되는 네이티브 기능들도 있는데 TurboModules 라는 것이 나오게 되면 개선될 것이라 한다. 업그레이드에 대비하자. 현재는 React Native 의 경우 ..
왜 React Native 가 좋은가? Android / Ios Native 를 Java, Kotlin, Swift 를 통해서 개발한다고 생각해보자. 단순히 한 화면에서 다른 화면으로 전환하며 데이터 전달을 한다고 할 때 간단히 보면 아래와 같다. 논리적으로나 복잡도에서나 react native 가 가장 단순하고 논리적이라 할 수 있다. 또한 안드로이드나 Swift 네이티브의 경우 구현을 하려면 꽤나 성가신 것을 알 수 있다. 간단한 화면 전환에서 데이터 전달을 함에 있어 인텐트, 액티비티, 세그웨이, 뷰컨트롤러 등의 고차원적 개념과 이를 각 문법에 맞게 그들 특유의 방식에 맞추어 공을 들여 구현해야 하고 또한 이런 간단한 의도를 코드로 구현하고자 함에 있어 여러가지 고려하고 생각해야할 것들이 많아 상당..