跳至主内容
版本:0.82

跨平台支持

非官方测试版翻译

本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →

React Native 不仅适用于 Android 和 iOS 设备——我们的合作伙伴和社区还维护着将 React Native 扩展到其他平台的各类项目,例如:

来自合作伙伴

来自社区

创建自己的 React Native 平台

目前从零开始创建 React Native 平台的流程尚未完善文档化——即将到来的架构升级 (Fabric) 目标之一就是简化平台维护工作

打包配置

从 React Native 0.57 开始,您可以将自定义平台注册到 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" 则是注册为有效平台的扩展名数组