appcelerator - Hyperloop 没有为 @protocol 标头生成 javascript 绑定
问题描述
我的shared.h
文件中有以下定义,该定义包含在我正在开发的自定义框架中。
__attribute__((swift_name("FivestarsPayEventListener")))
@protocol SharedFivestarsPayEventListener
@required
- (void)onFivestarsPayEventFivestarsPayEvent:(SharedFivestarsPayEvent *)fivestarsPayEvent __attribute__((swift_name("onFivestarsPayEvent(fivestarsPayEvent:)")));
@end;
当我构建项目时,会生成大多数绑定(它们用 注释@interface
)。
为什么 appcelerator 不为带@protocol
注释的标头生成绑定?
您可以看到生成了许多其他 javascript 绑定。例如,sharedaction
它是这样定义的
__attribute__((objc_subclassing_restricted))
__attribute__((swift_name("Action")))
@interface SharedAction : SharedKotlinEnum<SharedAction *>
+ (instancetype)alloc __attribute__((unavailable));
+ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable));
- (instancetype)initWithName:(NSString *)name ordinal:(int32_t)ordinal __attribute__((swift_name("init(name:ordinal:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable));
@property (class, readonly) SharedAction *getFullPath __attribute__((swift_name("getFullPath")));
@property (class, readonly) SharedAction *removeFile __attribute__((swift_name("removeFile")));
@property (class, readonly) SharedAction *writeToFile __attribute__((swift_name("writeToFile")));
@property (class, readonly) SharedAction *writeBytesToFile __attribute__((swift_name("writeBytesToFile")));
@property (class, readonly) SharedAction *readFile __attribute__((swift_name("readFile")));
@property (class, readonly) SharedAction *readFileCompressed __attribute__((swift_name("readFileCompressed")));
@property (class, readonly) SharedAction *getFiles __attribute__((swift_name("getFiles")));
@end;
解决方案
接口是定义类的成员和方法的地方。您也必须对实施负责。协议就像 java 的接口。
@dazza5000 添加的附加信息:
协议定义仍然可以由 Hyperloop 生成,但事实并非如此。我手动创建了接口实现,然后我可以将它们与超级循环生成的其余绑定一起使用。
推荐阅读
- sql - 为什么我的应用程序中没有返回行,而相同的查询在 DBBrowser 中返回行?
- python - 如何让我的 JupyterLab 显示我的数据框的值?
- mysql - 外键限制
- javascript - 试图在反应中导入一个img
- flutter - 动画列表不显示插入的项目颤动
- r - 如何通过配对列来对数据框进行子集化
- python - matplotlib - 为什么 blitting 冻结图
- reactjs - Api Platform & ReactJs & Symfony 4:路由问题
- sql - 如何计算另一个表的字符串中某个属性的出现次数
- javascript - 为什么 NodeJS 中来自 Angular 的 GET 请求有时为空,尽管有数据