【问题标题】:Can I use the same codebase for both a React Native macOS app and a React Native Windows app?我可以为 React Native macOS 应用程序和 React Native Windows 应用程序使用相同的代码库吗?
【发布时间】:2021-12-04 21:48:13
【问题描述】:

我正在尝试使用在 iOS、Android、macOS 和 Windows 上运行的 React Native 创建一个应用程序。能够使用 React Native 的一个优势是您可以在平台之间共享代码。

我遵循 React Native macOSWindows 的设置指南,但在指南中,它们会指导您从头开始为每个平台创建一个新应用程序。因为我想使用同一个应用程序,所以我不必编写两次相同的代码,我按照指南创建了 macOS 应用程序。然后,在这个应用程序中,我使用 Windows 指南中的命令 npx react-native-windows-init --overwrite 来初始化 Windows 平台。但是当我使用命令 npx react-native run-macos 运行 macOS 应用程序时,我得到了错误:

找不到模块“metro-config/src/defaults/exclusionList”

no bundle URL present

我对设置指南感到奇怪的一点是,对于 macOS,它告诉您使用 React Native 0.63 和 Windows 0.66。我对两者都使用了 0.66,也许这就是问题所在。但如果是这样,并且每个平台都需要不同版本的 React Native,我该如何为两个平台使用一个应用程序/代码库?这违背了 React Native 的核心前提之一:

创建特定于平台的组件版本,以便单个代码库可以跨平台共享代码。

是否可以像使用 iOS 和 Android 一样为两个桌面平台创建一个应用程序,如果可以,如何?


【问题讨论】:

    标签: react-native react-native-windows


    【解决方案1】:

    是的,你可以。您将必须创建一个单声道存储库 或者你可以使用 mono repo 样板。这是它的链接 https://github.com/mmazzarolo/react-native-universal-monorepo

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-29
      • 1970-01-01
      • 1970-01-01
      • 2020-07-09
      相关资源
      最近更新 更多