Skip to content

Latest commit

 

History

History
123 lines (93 loc) · 2.56 KB

2.如何让生成代码包含注释.md

File metadata and controls

123 lines (93 loc) · 2.56 KB

生成注释

这个教程将为你讲解怎么给 Unify 自动生成的代码添加注释。

实现原理

Unify 通过提取开发人员添加在模板文件中的注释,去给生成的代码添加相应的注释。

功能介绍

Unify 允许用户给自己编写的模板文件添加注释。这样在生成各端的代码时,注释会自动被添加到代码中。Unify 支持一下三类注释:

  1. 给类添加注释:适用于UniModelUniNativeModuleUniFlutterModule三种模板。
  2. 协议方法添加注释:适用于UniNativeModuleUniFlutterModule这两种模板。
  3. 给属性添加注释:仅适用于UniModel模板。

注释样式

Unify 模板支持的注释样式,一定要使用///开头的注释。

注释样式 是否支持
// Sorry,这种样式的注释,Unify 暂不支持
/*
  Sorry,这种样式的注释,Unify 暂不支持
*/
/// Excellent!Unify 支持这种样式的注释

应用指导

这里使用 UniModel 章节中的 ApolloModel 为例,ApolloModel 模板添加了类注释属性注释。Unify 生成带注释的代码片段如下:

代码片段
/*
  Apollo数据映射实体类
*/
public class ApolloModel extends UniModel {
    private boolean enable; // 开关是否开启
    private Map<String, Long> data; // 其他参数
    ......
}
Android
/*
  Apollo数据映射实体类
*/
@interface ApolloModel : NSObject

@property(nonatomic, strong) NSNumber* enable; // 开关是否开启 Origin dart type is 'bool'
@property(nonatomic, strong) NSDictionary<NSString*, NSNumber*>* data; // 其他参数 Origin dart type is 'Map'
......
@end
iOS
///  Apollo数据映射实体类
class ApolloModel {
    bool? enable; /// 开关是否开启
    Map<String, int>? data; /// 其他参数
    ......
}
Flutter

从代码片段中可见,代码是带有注释的,注释的内容来自 ApolloModel 模板。