oak-book/src/chapter2/2-5.md

1.8 KiB
Raw Blame History

定义组件对象

通过OakComponent接口可以定义一个组件对象。在前几章我们已经看到部分重要的定义配置项完整的配置项及格式可以参见oak-frontend-base/src/types/Page.ts文件。在编写代码时typescript也会给出有效的提示。在本章节我们将归纳并进一步介绍部分配置项以及组件本身可引用的数据项和方法。

配置项

配置项 类型 作用
entity string | () => string 组件关联的Entity
isList boolean 组件是否为列表页
projection object | () => object 组件所取的Entity属性
filters array 组件取Entity的过滤条件仅对list组件有效
sorters array 组件取Entity的排序仅对list组件有效
pagination object 组件取Entity的分页设置仅对list组件有效
getTotal number | object 组件取Entity取满足条件的行总数设置仅对list组件有效
properties object 组件接受的props
data object 组件自身的data(React中的state)
features array 组件需要监听哪些features的变化
actions array 组件需要检查哪些actions的许可
singleton boolean 组件是否单实例
formData function 组件处理取到的Entity数据
methods Record<string, function> 组件自身定义的方法

关于projection/filters/sorters的格式请了解Entity相关章节todo在这里不再展开讨论。一些通过typescript定义很容易理解其语义的配置也不再展开解释。