“本机链接”到底是做什么的?

gke*_*ley 10 javascript reactjs react-native

我的理解是,如果您具有本机模块,则“反应本机链接”允许您在项目中使用该模块。如果您对以下任何问题有任何见解,请分享:

1)我已经看到运行'react-native link'将相应的.xcodeproj文件添加到xcode的Libraries文件夹中,但是这如何允许您在项目中使用该模块?除了将文件添加到此文件夹外,运行“ react-native链接”还能做什么?

2)React Native随附的现成组件,例如,它们也可以访问本机功能,对吗?但是我们不必链接它们。这是否意味着它们默认情况下已链接?

3)如果^^之类的组件确实已预先链接,为什么我们不能对安装的新本机模块执行此操作?我假设运行“ react-native链接”会在项目中添加特定于计算机的内容,但是那将是哪台计算机?我正在开发的那个?

谢谢 :)

小智 1

1)通过链接,我确实相信它会复制/安装/组合模块所需的文件,并将这些依赖项导入/添加到相关的Android和iOS特定文件夹/文件中,这就是使它们工作并可用的原因到 RN 项目。

2) 不确定,但这些组件的作用类似于 RN 包中内置的一组默认值。它也可以被视为 RN 团队决定一起发布的一组块。我认为将它们视为默认链接模块没有问题。

3) 新添加的原生模块必须链接,因为它们超出了项目的“默认范围”,并且为了可用于 RN 平台,它们必须遵循链接过程。虽然链接每个模块并不有趣,但有时这是必要的,特别是当您修改默认启动例程/顺序时

希望有帮助^.^