CommonListPage 通用列表页模版
基于PagedTable
组件和SearchForm
组件封装的高阶组件,用于生成通用场景下的列表页面。
基础用法
带操作行的表格
操作行可以使用表单项组件来做简单的查询,复杂表单还是建议使用searchForms
。
列表页数据缓存及恢复
本例会用两个会销毁的tab容器模拟页面间的切换,数据恢复只有本组件创建时才会生效,如果同页面内希望恢复,可以通过修改组件的key让组件重新渲染。
使用提示
组件透传了对应参数以及事件绑定给PagedTable
组件。具见组件文档。
Attributes
参数 | 类型 | 说明 | 可选值 | 默认值 |
---|---|---|---|---|
row-key | string/Function | Table 组件的row-key 参数 | -- | 'id' |
request | () => Promise<PagedData> | 数据请求函数,需返回指定格式数据 | -- | -- |
search-forms | object | 搜索表单配置对象,传递给SearchForm组件, 类型SearchFormProps | -- | -- |
v-model:search-params | object | 搜索表单绑定对象,需要在外部处理绑定表单对象时使用 | -- | -- |
search-params-handler | Function(params) | 当前操作搜索表单数据更新前的处理函数,可用于对特定数据进行处理(例如时间组件数据)。 | -- | -- |
init-search-params | object | 初始搜索参数,表单需要默认值时设置。 | -- | -- |
operation | OperationItem[] | OperationOption | 操作区配置参数。 | 见 操作行配置 | -- |
operation
OperationItem类型说明
参数 | 类型 | 说明 | 可选值 | 默认值 |
---|---|---|---|---|
component | string | 组件名或组件,默认是按钮 | -- | Buttton |
key | string | 操作项唯一key | -- | -- |
props | object | 操作项组件的props对象 | -- | -- |
btnText | string | 按钮内文字 | -- | -- |
lockingKey | string | loading字段在loadings对象中的key | -- | -- |
onClick | (item: OperationItem, loadingSwitch: BoolSwitch) => void | 按钮的点击事件处理函数 | -- | -- |
OperationOption类型说明
参数 | 类型 | 说明 | 可选值 | 默认值 |
---|---|---|---|---|
loadings | object | 操作项组件的loading状态集合 | -- | -- |
items | OperationItem[] | 操作项对象数组 | -- | -- |
Slots
name | 说明 | 作用域数据 |
---|---|---|
-- | 默认插槽,位于搜索表单和表格之间 | -- |
operation | 操作区插槽 | -- |