【问题标题】:Ejecting from expo to expoKit/pure React Native从 expo 弹出到 expoKit/pure React Native
【发布时间】:2020-03-08 19:01:02
【问题描述】:

我目前正在将 Expo 用于我的 React Native 项目。我使用了一些 expo API,例如 Camera、Permissions、Fonts 和 FileSystem。但是,我开始意识到我需要更多功能,例如 Expo 不支持的 In App Purchases。我有几个关于弹出的问题。

  1. 如果我弹出到 ExpoKit,我仍然可以使用 Expo API,例如文件系统、权限等。
  2. 如果我弹出到纯 React Native,我仍然可以使用 Expo API,例如 FileSystem、Permissions 等

  3. 如果我弹出到 ExpoKit,我以后可以弹出到纯反应本机(完全从 Expo 中解脱出来)。还有我需要这样做的原因吗(即 ExpoKit 有任何限制)

【问题讨论】:

    标签: react-native expo


    【解决方案1】:

    我已经完全处理了这种情况,让我先回答这些问题,然后我会告诉我我的建议:

    1. 是的,如果您弹出到 ExpoKit,您可以使用 expo 模块。

    2.如果你弹出react native,在npm安装react-native-unimodules库后,你仍然可以使用expo的模块,该库具有所有expo依赖项。 unimodulesexpo file system

    1. expo kit 有很多限制,因为 ExpoKit 是在原生 React Native 应用程序中使用 Expo 工具的另一种方式。 ExpoKit 的问题在于,与“裸工作流”相比,它非常单一——您基本上将来自 Expo“托管工作流”的整个运行时包含在您的应用中,而不仅仅是您想要的部分

    现在我所做的是,我的 expo 应用程序在生产中已经有一段时间了,它非常缓慢和滞后,并且由于限制,许多模块(如应用程序购买等)没有集成。然后我决定完全纯反应原生。这是最好的决定。您可以控制应用程序的大小甚至性能。所以我想说,switch to pure react native for production and if you want to learn react native then follow expo path

    【讨论】:

    • 感谢您的帮助。如果我弹出纯反应原生并且仍然想使用 expo 模块,那将是一个性能和大小问题,因为我正在导入所有 expo 依赖项。另外,如果我弹出到 expoKit ,我以后可以从 expoKit 弹出到纯 RN 吗?
    • 我不知道从 expo kit 到 RN 的弹射。我想应该有办法。但是在 RN 中是的,如果你想使用 expo 模块,它会很重,所以不要采用这种方法,尝试其他 RN 模块,如 npmjs.com/package/react-native-fs 用于文件系统和所有。改变需要一些时间,但相信我。 , 它会 。变得更好
    • 好的,谢谢您的帮助。世博很好,就是感觉自己一直被限制了?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-24
    • 2022-06-13
    • 1970-01-01
    • 1970-01-01
    • 2021-07-05
    • 2021-12-26
    • 2018-08-25
    相关资源
    最近更新 更多