일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- rn
- Android
- commit
- ES6
- Xcode
- ios
- currying
- JavaScript
- HTML
- js
- styled-components
- React Native
- Docker
- vscode
- styling
- github
- ReactNative
- GitLab
- REACT
- Branch
- DevOps
- react-native
- shortcut
- xtring.log
- nextJS
- git
- npm
- npm install
- Swift
- viewcontroller
- Today
- Total
목록Front-End (51)
xtring.dev

지난 시간동안 다수의 React 프로젝트를 진행하면서 프로젝트를 빌드해 갈때마다 디렉토리 구조에 대해서 고민했습니다. 어떤 방법으로 디렉토리 구조를 잡을지는 언제나 어려웠으면 최선, 최고의 선택을 위해 고민하게되었습니다. 이 아티클에서는 해당 문제에 대해서 고민하며 얻게된 제 경험과 알아온 것들을 정리해보았습니다. 먼저, React 공식 페이지에서는 어떻게 프로젝트 디렉토리 구조를 잡으라고 하는지 살펴볼까요? Ref. https://ko.reactjs.org/docs/faq-structure.html 파일 구조 – React A JavaScript library for building user interfaces ko.reactjs.org React 프로젝트를 구조화하는 권장 방법이 있습니까? React..

React Native(RN) 프로젝트에서 정확한 Simulator를 지정하지 않고 Run하게 되면 임의의 Simulator 모델이 켜지게 됩니다. 가장 최근에 사용했던 Simulator 모델이 실행되기도 합니다. $ npx react-native run-ios 하지만 다양한 기기에 올려보고 싶고 더 정확히 특정 Simulator을 실행시키고 싶을 때는 어떻게 할까요? 실행 명령어 뒤에 아래와 같은 명령어를 입력해주면 됩니다! --simulator="" 더 구체적으로 아래와 같은 패턴으로 우리의 RN 프로젝트를 특정 simulator에 올릴 수 있습니다! // iPhone $ npx react-native run-ios --simulator="iPhone 8" $ npx react-native run-i..

null 병합 연산자 null 병합 연산자(nullish coalescing operator)라고 불리는 ??에 대해서 알아 봅시다. ??를 사용하면 짧은 문법으로 여러 피연산자 중 그 값이 '확정되어있는' 변수를 찾을 수 있습니다. a ?? b의 결과는 아래와 같습니다. a가 null 또는 undefined가 아니면 a 그 외의 경우는 b(a가 null 또는 undefined) null 병합 연산자 ?? 없이 x = a ?? b와 동일한 동작을 하는 코드를 작성하면 다음과 같습니다. x = (a !== null && a!== undefined) ? a : b; 이 길어지는 코드를 간단하게 표현할 수 있습니다. 하나의 예시를 더 보겠습니다. let firstName = null; let lastName ..

헷갈리는 부분을 다시 한번 정리하고자 작성했습니다. 정확히 알고 가면 많은 실수를 줄일 수 있습니다. Boolean형 비교 Boolean형의 비교 연산은 하나의 값을 반환합니다. - true가 반환되면, "긍정", "참", 사실"을 의미합니다.(= 1 또는 그 이상의 양수) - false가 반환되면, "부정", "거짓", "사실이 아님"을 의미합니다.(= 0 또는 그 이하의 음수) 예시) console.log(2 > 1);// true console.log(2 == 1); // false console.log(2 != 1);// true 반환된 Boolean값은 다른 값들 처럼 변수에 할당하는 것이 가능합니다. let result = 5 > 4;// 비교연산의 결과를 result에 할당 console.l..

헤르메스(Hermes)는 React Native에서 안드로이드 앱을 구동할 때 최적화하기 위해 사용합니다. 기존의 React Native 앱은 '실행 시점'에서 JavaScript를 bytecode로 컴파일합니다. 하지만 헤르메스를 사용하면 '빌드 시' bytecode로 컴파일을 하여 빌드 파일의 크기를 줄여주고, 실행시점에서의 컴파일이 필요없게 되어 초기 실행 속도가 개선됩니다. 따라서 헤르메스(Hermes)의 이점으로는 아래 세가지가 있습니다. 1. 앱 실행(launch) 속도가 빨라집니다. 2. APK 사이즈를 줄일 수 있습니다.(실제 20%까지 줄여지는 것을 눈으로 확인함) 3. 메모리 사용량을 줄일 수 있습니다.(20% 절감) 이렇게 좋은 헤르메스는 사용법도 아주 간단합니다. 먼저, 프로젝트의 ..

React Native로 개발한 앱을 Play Store에 업로드하기 위해서 Android 앱을 Build해봅시다. 1. PlayStore 개발자 등록하기 먼저 구글 Play에서 developer 계정을 생성하고 등록합니다. developer.android.com/distribute/console?hl=ko Google Play | Android Developers Google Play Console로 앱과 게임을 게시하고 Google Play에서 비즈니스를 성장시키세요. 앱의 품질을 개선하고, 사용자층과 소통하고, 수익을 창출하기 위한 여러 기능을 활용할 수 있습니다. developer.android.com 개발자 계정을 등록할 때 약 5만원의 등록비가 필요합니다... 2. Android 서명키 생성하..

React Native에서 Image 컴포넌트를 사용하면 이미지를 뷰에 맞추기 위해 resizeMode를 사용하여 일부 상위 컨테이너에 맞추게 됩니다. 하지만 때때로 resizeMode 만을 통해 상위 컨테이너에서 보여주고 싶은 부분을 완벽하게 보여주지 못하는 경우가 발생하기도 합니다. 바로 아래 예시를 살펴봅시다! 위와 같은 경우 item(상위 컨테이너)이 가진 영역 만큼 안에서 이미지는 상하단의 영역을 보장하여 이미지의 사이즈를 조정합니다. 하지만 이 경우 좌우영역의 빈 공간이 발생하게 됩니다. 그렇다면 resizeMode='cover'로 바꾸면 어떻게 될까요? 이미지의 비율에 상관없이 부모 컨테이너의 영역을 모두 덮을 수 있도록 해줍니다. 이 것은 때때로 문제를 가질 수 있는데요. 🤓 cover 속..

React Native 프로젝트에서 .jsx 사용하기 최근 React 프로젝트를 진행하면서 파일 형식을 .jsx로 하다 보니 새 React Native 프로젝트에서 .jsx으로 파일을 생성하니 Error가 터져나왔습니다. 파일 자체를 인식하지 못한다는 메세지를 보고 혹시 jsx 형식 자체가 인식이 되지 않을까 하는 생각에 구글링을 하던 중 찾게 된 jsx 설정 방법입니다. RN > 0.59 일 경우 프로젝트의 Root level에 metro.config.js에서 설정합니다. * 제가 세팅한 RN version은 0.62.2여서 위와 같은 세팅을 진행했습니다. RN 0.57 프로젝트의 Ro..