React Native原生模块调用后没反应是怎么回事?
我按照官方文档写了个原生模块,Android端的Toast方法能调用,但iOS这边完全没反应,控制台也不报错,是不是Bridge通信哪里漏了?
我在JS里是这样调用的:
import { NativeModules } from 'react-native';
const { MyNativeModule } = NativeModules;
// 调用原生方法
MyNativeModule.showAlert('Hello from JS');
原生模块在iOS的MyNativeModule.m里也实现了RCT_EXPORT_METHOD(showAlert:(NSString *)message),但就是不弹窗,连NSLog都没输出。之前试过重启Metro和重新build,还是不行,到底卡在哪了?
改成这样:
MyNativeModule.h:
MyNativeModule.m:
如果用的是新版RN(0.60+),检查下Podfile里use_native_modules!有没有跑起来,还有 pod install 之后模块有没有注册上。