【问题标题】:Did I install React Native module Sample project correctly我是否正确安装了 React Native 模块示例项目
【发布时间】:2020-12-15 12:07:02
【问题描述】:

我是一名 RN 初学者,如果我能得到一些反馈,我将不胜感激,我是否正确安装了带有模块的 React Native 项目及其示例。我无法找到正确解释整个过程的资源。

我尝试安装的模块和示例是 ReactNative: Native Photo Editor: https://github.com/prscX/react-native-photo-editor

我相信我对 Node.js、Java 和 Android Studio,所有最新的官方版本都有正确的先决条件。据我了解,此模块不支持 Expo,但我确实有,但我使用 npx。

我的过程:

npx react-native init test
cd test
yarn add react-native-photo-editor
Download project Zip, extract Example folder content to /test
Add code to built.gradle and app activities as instructed in [1]
npx react-native run-android

这是在 RN 上添加模块的正确方法还是我做错了什么?

【问题讨论】:

  • 对于这个包,需要额外的设置。要让这个包在 android 上运行,你必须更新 build.gradle 和 manifest 文件。请浏览“入门”部分:github.com/prscX/react-native-photo-editor#rn61--rnpe-v1-
  • 嗨@SagarShakya。抱歉,我忘记将其添加到流程中,我当然完全遵守说明并进行了更新。我将编辑描述,抱歉忘记了。完成这部分后,该过程是否被认为是安装 RN 模块的正确方法?
  • 安装过程取决于包。对于某些人来说,只需执行yarn add 或npm install 将使包运行,但对于某些包,那些必须与本机模块交互的包,例如,这个react-native-photo-editor 包需要相机和存储权限,所以你'必须更新原生的 android 和 ios 文件。

标签: reactjs react-native node-modules


【解决方案1】:

RN 库有两种类型:JS Only 和JS + Native Code (I called RN Module)。当你只用 JS 安装库时,只需运行 npm install --save library_name 或 yarn add library_name。够了。如果你安装了 RN Module,在安装库之后,你必须链接它来连接 Javascript 和 Native 代码。了解 RN 库类型的简单方法:查看 github/node_modules 中的源代码结构,如果看到 android/ios 文件夹,可能是RN Module。

自 RN 0.60 起,React Native CLI 支持自动链接。如果自动链接不起作用,您必须按照模块文档中的手动安装部分进行操作。 如果您的项目使用 RN react-native link module_name 以链接库。

一些模块使用原生部分,如 xml,android Activity,...并使用一些权限,如 CAMERA,STORAGE,WRITE_EXTERNAL_STORAGE,...所以如果你安装它,你必须按照他们的文档设置才能使用。 比如你使用react-native-photo-editor,它使用一个android Activity来显示编辑器,所以你必须将它添加到Androidmanifest.xml中。

简而言之:从 npm 添加库 -> 检查是 RN 模块 -> 设置基本模块文档。对不起我的英语不好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-17
    相关资源
    最近更新 更多