# 工程规范介绍 NEI 3.0 版本和以往版本有所不同,可以直接在 NEI 平台上定义工程规范 工程规范定义了工程的初始化目录结构,在使用本工具构建项目的时候,会按照定义好的目录和文件数据在本地生成相应的目录和文件 ## 工程规范和项目的关联方式 在项目的"工具设置"中,我们可以分别指定项目的"WEB工程规范"、"AOS工程规范"、"iOS工程规范"以及"测试工程规范" 除了设置项目的工程规范外,还可以为项目设置"变量映射规则"和"命令行参数": ### 变量映射规则 有时在 NEI 上定义的变量名称, 在使用构建工具翻译成目标语言代码时, 名称可能需要更改。此时可以使用变量映射规则表。 比如在 NEI 上面定义的类型名称为 Number,在生成 Objective-C 代码时,想使用 NSInteger, 此时可以设置规则如下: | 数据模型 | 变量名称 | | :--- | :--- | | Number | NSInteger | ### 命令行参数 请查看 [传给模板的数据格式说明](./传给模板的数据格式说明.md#args) 中关于命令行参数的介绍 ## 工程规范中的目录 除了常规目录外,还有以下特殊目录: * 静态资源根目录:在使用本地模拟容器时,需要该信息,该目录用来存放静态资源 * 模板根目录:在使用本地模拟容器时,需要该信息,该目录用来存放页面模板 * 接口MOCK数据根目录:使用本工具生成的异步接口的mock数据会放到该目录下面 * 模板MOCK数据根目录:使用本工具生成的页面模板的mock数据会放到该目录下面 * JAR包根目录:存放自定义JAR包,ftl 模板可以直接调用JAR包中的静态方法 ## 工程规范中的文件 除了常规文件外,还有以下特殊文件: * 接口列表填充:使用项目中定义的异步接口数据列表作为数据源,每个异步接口都会生成一个文件 * 数据模型列表填充:使用项目中定义的数据模型数据列表作为数据源,每个数据模型都会生成一个文件.为了保持通用性,我们区分了枚举类型和非枚举类型.如果需要使用枚类型的数据类型列表,需要在文件名后面加上`!!enum` * 页面模板列表填充:使用项目中定义的页面模板数据列表作为数据源,每个页面模板都会生成一个文件 * 视图列表填充:使用项目中定义的视图数据列表作为数据源,每个视图都会生成一个文件 * 命令行参数配置文件:该文件的内容须为有效的 json,它的值会作为本构建工具的命令行参数 ## 传给模板的数据格式说明 本构建工具使用 [handlebars](http://handlebarsjs.com/) 模板引擎,在生成目录和文件的时,传入的数据见说明:[传给模板的数据格式说明](./传给模板的数据格式说明.md) [Handlebars 辅助函数集说明](./Handlebars辅助函数集.md)