视图
代码地址:trantor-example-view
视图(理解Trantor->视图)是 Trantor 中承载交互的内容,视图总是属于一个模型,并属于一种视图类型。目前 Trantor 支持 List 、Detail 、Form 三种视图类型,分别对应模型的复数展示、模型单条记录的展示以及模型单条记录的新增和修改。
Trantor 提供了一种高度抽象的 DSL 来编写视图,详见:DSL语法。
DSL 基于 XML 扩展 ,用户在编写视图时,主要关注布局容器、数据容器、前端控件、行为等主要概念即可完成视图的编写。
视图定义
模块中的视图放置在 src/main/resources/trantor/resources/{moduleKey} 目录下,由一个清单文件和一系列 xml + js 文件组成,而使用这些视图则在view-manifest.json中定义。
[ { "key": "toList", "name": "学生列表", "type": "List", "forModel": "example_view_Student", "template": "student/student-list-view.xml", "isDefault": true }, { "key": "toEdit", "name": "编辑学生", "type": "Form", "forModel": "example_view_Student", "template": "student/student-form-view.xml", "controller": "student/student-form-view.ts", "isDefault": true }]其中:
| 属性 | 类型 | 解释 |
|---|---|---|
| Key | String | 视图key,模型下唯一 |
| name | String | 视图展示名称 |
| type | 枚举 | type可以为Form/Detail/List(表单/详情/列表) |
| forModel | String | 模型key |
| template | String | 视图所在位置 |
| isDefault | Boolean | 是否是模型视图,单个模型的相同type类型只能存在一个isDefault为true |
| controller | String | controller为前端自定义逻辑,填写ts文件位置 |
Controller
controller 可以让前端自定义写一些代码,可做字段校验,数据获取,表单联动,动态数据校验,页面通信等功能。
详情见:开发文档controller。