[React Native] React Native 스타일링가이드 및 패키지 소개

양서연·2024년 4월 12일

The Rules of Native

1. div가 아닌 View를 사용해야 한다.

React Native에서는 div를 사용할 수 없다. 그 대신 View를 활용한다. View는 컴포넌트이고 항상 import되어야 한다.

2. Text 컴포넌트 활용

React Native에서는 모든 텍스트를 Text 컴포넌트 안에 넣어야 한다. Text를 View 안에 넣으면 오류가 발생할 수 있다. 이는 웹과는 다른 특징이니 주의가 필요하다.

3. 스타일링의 자유

React Native는 원하는 대로 스타일을 적용할 수 있다. View에는 다양한 스타일 속성이 있다. 일부 웹에서 사용하던 속성은 사용할 수 없어 주의가 필요하다. StyleSheet.create를 사용하면 스타일을 객체로 정의할 수 있다.

StyleSheet.create는 자동완성 기능을 제공하고 스타일 component를 정리하는데 유용하다. 하지만 필수적인 것은 아니다.

보너스 팁: "Status-Bar"

React Native에서는 status-bar를 직접 import하지 않는다. 이는 제 3자 패키지로, 시계, 배터리, 와이파이 등의 상태를 나타낸다.

React Native에서는 CSS 오류가 발생하면 문제의 위치를 명확히 알려준다. 따라서 코드를 작성할 때 편리하게 작성할 수 있다.

React Native Packages

https://reactnative.dev/docs/statusbar

React Native의 공식 문서에서는 StatusBar 컴포넌트와 함께 다양한 패키지를 소개하고 있다.

예전 버전에 들어가보면 사용가능한 패키지들이 있는데 지금은 사용할 수 없는 것들이 있다.
최근의 React Native는 초기에 제공하려 했던 많은 컴포넌트와 API를 줄여 규모를 줄이는 방향으로 발전하고 있다.

Third Party Packages

https://docs.expo.dev

Expo SDK -> expo팀이 자체적으로 packages와 apis를 만든것

왜 Expo StatusBar와 React Native StatusBar가 둘 다 있는지?

expo가 React Native의 일부 Componets와 APIs를 복제하고 개선하기때문이다.
expo가 제공하는 StatusBar는 React Native에서 제공하는 StatusBar와 같은데 약간만 다르다.
https://reactnative.dev/docs/statusbar
https://docs.expo.dev/versions/latest/sdk/status-bar/

React Native팀은 서비스 제공 부분을 축소해 React Native가 빠르게 작동하도록 만들고있다.
Expo는 대단한 툴을 만드는 그룹이다. 한 곳에서 APIs를 쓸 수 있도록 만들었다. Documentiation에는 필요한 거의 모든 것들이 있다.

profile
일단 해보자고

0개의 댓글