是否可以扩展和RCTConvert来证明函数的客户参数。
示例:
我想要一个NSSet *
参数类型
@objc func getItems(ids: NSSet, result: RCTResponseSenderBlock) {
}
RCT_EXTERN_METHOD(getItems:(NSSet *)items result:(RCTResponseSenderBlock)result)
但是这段代码失败并出现错误:
方法中的未知参数类型'NSSet' - [HealthKitAPI requestPermission:write:result:]。扩展RCTConvert以支持此类型。
答案 0 :(得分:1)
是可能。
扩展RCTConvert类型并在此处添加自定义类型 RCTConvert包含许多可帮助您编写客户转换器的宏
@interface RCTConvert (NSSet)
+ (NSSet *)NSSet:(id)json;
@end
@implementation RCTConvert (NSSet)
RCT_CUSTOM_CONVERTER(NSSet *, NSSet, [NSSet setWithArray:json])
@end