Skip to main content
Version: Next

Out-of-Tree Platforms

React Native는 Android와 iOS 기기뿐만 아니라 다양한 플랫폼에서도 사용할 수 있다. 파트너와 커뮤니티가 React Native를 다른 플랫폼에 적용하기 위한 프로젝트를 진행하고 있다. 주요 프로젝트는 다음과 같다:

파트너 프로젝트

커뮤니티 프로젝트

리액트 네이티브 플랫폼 직접 만들기

현재 리액트 네이티브 플랫폼을 처음부터 만드는 과정은 잘 문서화되어 있지 않다. 다가오는 재구조화(Fabric)의 주요 목표 중 하나는 플랫폼 유지 관리를 더 쉽게 만드는 것이다.

번들링

React Native 0.57 버전부터 React Native 플랫폼을 React Native의 JavaScript 번들러인 Metro에 등록할 수 있다. 이는 npx react-native bundle 명령어에 --platform example을 전달할 수 있음을 의미하며, .example.js 접미사가 붙은 JavaScript 파일을 찾게 된다.

RNPM에 플랫폼을 등록하려면 모듈 이름이 다음 패턴 중 하나와 일치해야 한다:

  • react-native-example - react-native-로 시작하는 모든 최상위 모듈을 검색한다.
  • @org/react-native-example - 모든 스코프 아래에서 react-native-로 시작하는 모듈을 검색한다.
  • @react-native-example/module - @react-native-로 시작하는 스코프 아래의 모든 모듈을 검색한다.

또한 package.json 파일에 다음과 같은 항목이 있어야 한다:

json
{
"rnpm": {
"haste": {
"providesModuleNodeModules": ["react-native-example"],
"platforms": ["example"]
}
}
}

"providesModuleNodeModules"는 Haste 모듈 검색 경로에 추가될 모듈들의 배열이고, "platforms"는 유효한 플랫폼 접미사로 추가될 플랫폼들의 배열이다.