我有一个用Swift编写的react本机组件,我希望将它提取为一个框架,以便其他项目/人员可以很容易地使用它。
首先我创建了一个新的iOS项目Foo,添加了一个框架目标,然后添加了源文件。最后,我建造了它。
它失败是因为:
Bar.swift:lineNumber:未解析标识符'RCTConvert‘RNBarManager.swift:lineNUmber的使用:未声明类型'RCTViewManager’的使用
尝试1:
我运行了react-native link,但是没有什么改变。
企图2:
React.xcodeproj拖到Foo项目中,并将libReact.a添加到Link Binary With Libraries。$(SRCROOT)/../node_modules/react-native/React添加到Header Search Paths。但不起作用。错误仍然存在。
企图3:
我在想也许斯威夫特不认识这些文件。
因此,我添加了Foo-Bridging-Headers.h,就像在React本地应用程序中一样,它包含以下代码:
#import "React/RCTBridge.h"
#import "React/RCTViewManager.h"
#import "React/RCTUIManager.h"
#import "React/UIView+React.h"
#import "React/RCTBridgeModule.h"我还将Foo-Bridging-Headers.h添加到Build Settings->Swift Compiler - General->Object-C Bridging Header中,
但我还是犯了个错误。
不支持使用桥接标头和框架目标。
这里似乎不允许桥接头。
企图4:
我试图将这些导入添加到Foo.h中,
但又犯了个错误。
Foo.h:21:9:在框架模块'Foo‘中包含非模块头。
要成功编译,我应该做些什么?
发布于 2019-08-08 09:35:56
这似乎是一个问题,可可荚所需的链接反应你的项目。
尝试使用终端在项目目录中运行pod install,然后尝试构建。
发布于 2018-04-12 22:00:55
链接发生在托管应用程序中,而不是在您创建的框架中。只需要头。
https://stackoverflow.com/questions/42570599
复制相似问题