Ami*_*ian 6 objective-c ios-frameworks swift react-native
我创建了一个React本机库.在其中的原生iOS代码中,我导入了一个Swift框架.当我在另一个项目中导入此React库并调用该showToast方法时,我收到此错误:Exception 'showToast: is not a recognized Objective-C method'
如果它有帮助,我在下面得到我的代码;
这是我的RNToastLib.m:
#import "RNToastLib.h"
#import <Foundation/Foundation.h>
@implementation RCT_EXTERN_MODULE(ToastManager, NSObject)
RCT_EXTERN_METHOD(showToast:(NSString *)text)
@end
Run Code Online (Sandbox Code Playgroud)
这是我的RNToastLib.h:
#if __has_include("RCTBridgeModule.h")
#import "RCTBridgeModule.h"
#else
#import <React/RCTBridgeModule.h>
#endif
@interface RNToastLib : NSObject <RCTBridgeModule>
@end
Run Code Online (Sandbox Code Playgroud)
这是我的ToastManager.Swift:
import Foundation
import Toaster
@objc(ToastManager)
class ToastManager: NSObject {
@objc func showToast(_ text: String) {
Toast(text: text, duration: Delay.short).show();
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的RNToastLib-Bridging-Header.h:
#import "RCTBridgeModule.h"
Run Code Online (Sandbox Code Playgroud)
这是我的index.js:
import {NativeModules} from 'react-native';
const {ToastManager} = NativeModules;
export default class ToastLib {
static showToast(text) {
ToastManager.showToast(text);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
180 次 |
| 最近记录: |