React Native调用原生模块时Promise不返回结果怎么办?
我写了一个iOS原生模块,用Promise方式回调,但在JS里调用后既没进then也没进catch,卡住了。是不是导出方法写错了?
这是我的JS调用代码:
import { NativeModules } from 'react-native';
const { MyNativeModule } = NativeModules;
MyNativeModule.doSomething()
.then(result => console.log('Success:', result))
.catch(error => console.log('Error:', error));
注意方法声明必须是
(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject这两个参数,顺序不能错。JS端方法名会自动对应doSomething。