当将Swift桥接到React-Native时,“不是公认的Objective-C方法”

我试图将我的React-Native 0.33代码链接到一个超级简单的 Swift方法,在 this guide之后,但是我得到的只是显示:( NSString *)名称不是一个公认的Objective-C方法.

这是我的代码:

SwitchManager.swift

import Foundation

@objc(SwitchManager)
class SwitchManager: NSObject {

  @objc func show(name: String) -> Void {
    NSLog("%@",name);
  }

}

SwitchManagerBridge.h

#import "RCTBridgeModule.h"

@interface RCT_EXTERN_MODULE(SwitchManager,NSObject)

RCT_EXTERN_METHOD(show:(NSString *)name)

@end

SwitchManager桥接,Header.h

#import "RCTBridgeModule.h"

然后在我的index.ios.js文件中,我从“NativeModules”导入导入{SwitchManager}的SwitchManager;并调用SwitchManager.show(‘One’);.这是错误发生的地方.

不知道怎么了

我一整天都在和这个问题进行斗争.通过将Swift编译器设置为使用Legacy版本(XCode 8更喜欢Swift 3)解决,所以在:

构建设置>向下滚动到“使用旧版Swift语言版本”设置为是.

相关文章

软件简介:蓝湖辅助工具,减少移动端开发中控件属性的复制和粘...
现实生活中,我们听到的声音都是时间连续的,我们称为这种信...
前言最近在B站上看到一个漂亮的仙女姐姐跳舞视频,循环看了亿...
【Android App】实战项目之仿抖音的短视频分享App(附源码和...
前言这一篇博客应该是我花时间最多的一次了,从2022年1月底至...
因为我既对接过session、cookie,也对接过JWT,今年因为工作...