【问题标题】:Extending RCTConvert to provide custom function types扩展 RCTConvert 以提供自定义函数类型
【发布时间】:2015-07-10 08:45:40
【问题描述】:

是否可以扩展和 RCTConvert 来证明函数的客户参数?

示例:
我想要一个具有NSSet * 参数类型的函数

@objc func getItems(ids: NSSet, result: RCTResponseSenderBlock) {

}

RCT_EXTERN_METHOD(getItems:(NSSet *)items result:(RCTResponseSenderBlock)result)

但此代码失败并出现错误:

方法 -[HealthKitAPI requestPermission:write:result:] 中的未知参数类型“NSSet”。扩展 RCTConvert 以支持此类型。

【问题讨论】:

  • a hack -> 导出方法时使用id 而不是NSSet RCT_EXTERN_METHOD(getItems:(id)items result:(RCTResponseSenderBlock)result)

标签: ios reactjs react-native


【解决方案1】:

是的有可能。

扩展 RCTConvert 类型并在此处添加自定义类型。
RCTConvert 包含许多帮助您编写客户转换器的宏

@interface RCTConvert (NSSet)

+ (NSSet *)NSSet:(id)json;

@end


@implementation RCTConvert (NSSet)
RCT_CUSTOM_CONVERTER(NSSet *, NSSet, [NSSet setWithArray:json])

@end

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-26
    • 1970-01-01
    • 2015-08-27
    • 2012-02-16
    • 1970-01-01
    相关资源
    最近更新 更多