如何在Objective-C代码中重用Swift类型

som*_*nek 3 objective-c swift react-native-native-module

我正在创建一个自定义的react-native模块,我在swift文件中有这个自定义类型

VideoTrimmer.swift

typealias TrimCompletion = (Error?) -> ()

如何在具有客观代码的文件中导入或重用它?或者重新声明它的语法是什么?我不太熟悉Objective-C语法.

VideoTrimmer.m

#import "React/RCTBridgeModule.h"
@interface RCT_EXTERN_MODULE(VideoTrimmer, NSObject)
  RCT_EXTERN_METHOD(trimVideo:(NSURL *)sourceURL destinationURL:(NSURL 
  *)destinationURL startTime:(int *)startTime endTime:(int *)endTime 
  completion:(TrimCompletion *)completion)
@end
Run Code Online (Sandbox Code Playgroud)

Eug*_*kov 8

Objective-C 不支持 Swift中定义的Typealiases .但是,您应该可以在Objective-C中重新声明块类型typedef:

typedef void (^TrimCompletion)(NSError *);
Run Code Online (Sandbox Code Playgroud)