1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
| // 用于配置某些组件的常规配置,而无需修改组件
|
| import type { SorterResult } from '../components/Table';
|
| export default {
| // 表格配置
| table: {
| // 表格接口请求通用配置,可在组件prop覆盖
| // 支持 xxx.xxx.xxx格式
| fetchSetting: {
| // 传给后台的当前页字段
| pageField: 'pageNo',
| // 传给后台的每页显示多少条的字段
| sizeField: 'pageSize',
| // 接口返回表格数据的字段
| listField: 'records',
| // 接口返回表格总数的字段
| totalField: 'total',
| },
| // 可选的分页选项
| pageSizeOptions: ['10', '50', '80', '100'],
| // 表格默认尺寸
| defaultSize: 'middle',
| //默认每页显示多少条
| defaultPageSize: 10,
| // 默认排序方法
| defaultSortFn: (sortInfo: SorterResult) => {
| //update-begin-author:taoyan date:2022-10-21 for: VUEN-2199【表单设计器】多字段排序
| if(sortInfo instanceof Array){
| let sortInfoArray:any[] = []
| for(let item of sortInfo){
| let info = getSort(item);
| if(info){
| sortInfoArray.push(info)
| }
| }
| return {
| sortInfoString: JSON.stringify(sortInfoArray)
| }
| }else{
| let info = getSort(sortInfo)
| return info || {}
| }
| //update-end-author:taoyan date:2022-10-21 for: VUEN-2199【表单设计器】多字段排序
| },
| // 自定义过滤方法
| defaultFilterFn: (data: Partial<Recordable<string[]>>) => {
| return data;
| },
| },
| // 滚动组件配置
| scrollbar: {
| // 是否使用原生滚动样式
| // 开启后,菜单,弹窗,抽屉会使用原生滚动条组件
| native: false,
| },
| //表单配置
| form: {
| labelCol: {
| xs: { span: 24 },
| sm: { span: 4 },
| },
| wrapperCol: {
| xs: { span: 24 },
| sm: { span: 18 },
| },
| //表单默认冒号
| colon: true,
| },
| };
|
| /**
| * 获取排序信息
| * @param item
| */
| function getSort(item){
| const { field, order } = item;
| if (field && order) {
| let sortType = 'ascend' == order ? 'asc' : 'desc';
| return {
| // 排序字段
| column: field,
| // 排序方式 asc/desc
| order: sortType,
| };
| }
| return ''
| }
|
|