作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
在 React Native 中导出具有返回值的方法的最佳方式是什么?
我知道有 RCT_EXPORT_METHOD
,但这只适用于 (void)
的方法,因此不返回任何内容。最好我不需要导出整个类,只需导出几个方法。
另一种选择是进行回调,但我想尽可能避免这种情况,因为在我的用例中它会使代码膨胀太多。还有其他我可能错过的选择吗?
最佳答案
您现在也可以使用 promises,这在您的 JS 中看起来会更好一些。
Objective-C :
RCT_REMAP_METHOD(getThing, resolver: (RCTPromiseResolveBlock)resolve
rejecter:(RCTPromiseRejectBlock)reject)
{
if( condition ) {
NSString *thingToReturn = @"ALL OK";
resolve(thingToReturn);
} else {
reject([NSError errorWithDomain:@"com.companyname.app" code:0 userInfo:@{ @"text": @"something happend" }]);
}
}
然后在 JS 中:
async onPress() {
try {
const status = await CustomModule.getThing();
// do something with status
} catch(e) {
console.error(e);
}
}
关于javascript - react native : How to export a method with a return value?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29771622/
我是一名优秀的程序员,十分优秀!