在没有CocoaPods的情况下将React Native添加到现有的iOS项目中

由于多种原因,您可能会发现自己想要将React Native添加到现有的iOS项目中而不使用CocoaPods。 CocoaPods是一种用于自动将第三方库添加到项目中的过程的工具,但是没有理由在情况需要时不能手动执行此操作。

注意,这假设您已在本地存储库内的node_modules文件夹中将 React Native下载为依赖项。

有关如何将React Native作为依赖项添加到项目的示例,无非是使用react-native init或UIExplorer项目创建的任何项目(包括在react-native Github存储库的Examples目录中)。

将React Native的子项目添加到您自己的项目中

默认情况下,新创建的React Native项目包括以下子项目。 我建议您在项目中创建一个组,以在Xcode中将这些子项目添加到其中,右键单击它,然后选择“将文件添加到YOUR_PROJECT_NAME ”。 然后,您可以添加React项目本身(位于node_modules / react-native / React中)和所有其他React Native子项目(位于node_modules / react-native / libraries中)。

将二进制文件与库链接

为了编译我们的项目,我们必须将我们的项目目标与第三方的React Native库链接; 在这种情况下,我们的项目目标是“ UIExplorer”。 注意,如果您正在使用位于任何React Native子项目中的类的任何目标,则必须将受关注的库与所讨论的目标链接。

导航到Build-phases-> Link Binary With Libraries添加以下库。 注意,在这种情况下,库是静态链接的。

“其他链接器标志”

如果您尚未设置以下链接器标志,则有必要添加它们以在项目中编译React-Native。

标头搜索路径

如果您使用的React Native版本低于0.40,则有必要向项目添加一些其他标题搜索路径 。 从0.40开始,由于在React Native项目中添加了“ copy headers”阶段,因此没有必要。 这些标头可以包含在系统包含(’s)中,因为标头本身将与其他系统标头一起位于特定目录中。

在您使用的React-Native版本低于0.40的实例中,您需要在项目的标题搜索路径中添加以下内容 这告诉编译器可以在哪里找到React Native头文件。 注意,添加的路径应相对于node_modules目录。

希望信息对您有所帮助。 现在可能已经很清楚了(如果还不是很清楚),考虑到它的乏味性,为什么存在诸如CocoaPods之类的工具来使该过程自动化。

如有任何疑问,请随时提出,我们将竭尽所能。