干燥机配套车间生产管理系统/云平台前端
baoshiwei
2023-03-10 1fb197352b6a263646e4ccd3ed1c7854ede031dd
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
89
90
91
92
93
import { propTypes } from '/@/utils/propTypes';
 
export const vxeProps = () => ({
  rowKey: propTypes.string.def('id'),
  // 列信息
  columns: {
    type: Array,
    required: true,
  },
  // 数据源
  dataSource: {
    type: Array,
    required: true,
  },
  authPre: {
    type: String,
    required: false,
    default: '',
  },
  // 是否显示工具栏
  toolbar: propTypes.bool.def(false),
  // 工具栏配置
  toolbarConfig: propTypes.object.def(() => ({
    // prefix 前缀;suffix 后缀;
    slots: ['prefix', 'suffix'],
    // add 新增按钮;remove 删除按钮;clearSelection 清空选择按钮;collapse 展开收起
    btns: ['add', 'remove', 'clearSelection'],
  })),
  // 是否显示行号
  rowNumber: propTypes.bool.def(false),
  // 是否可选择行
  rowSelection: propTypes.bool.def(false),
  // 选择行类型
  rowSelectionType: propTypes.oneOf(['checkbox', 'radio']).def('checkbox'),
  // 是否可展开行
  rowExpand: propTypes.bool.def(false),
  // 展开行配置
  expandConfig: propTypes.object.def(() => ({})),
  // 页面是否在加载中
  loading: propTypes.bool.def(false),
  // 表格高度
  height: propTypes.oneOfType([propTypes.number, propTypes.string]).def('auto'),
  // 最大高度
  maxHeight: {
    type: Number,
    default: () => null,
  },
  // 要禁用的行
  disabledRows: propTypes.object.def(() => ({})),
  // 是否禁用全部组件
  disabled: propTypes.bool.def(false),
  // 是否可拖拽排序(有固定列的情况下无法拖拽排序,仅可上下排序)
  dragSort: propTypes.bool.def(false),
  // 排序字段保存的Key
  sortKey: propTypes.string.def('orderNum'),
  // 排序序号开始值,默认为 0
  sortBegin: propTypes.number.def(0),
  // 大小,可选值有:medium(中)、small(小)、mini(微)
  size: propTypes.oneOf(['medium', 'small', 'mini']).def('medium'),
  // 是否显示边框线
  bordered: propTypes.bool.def(false),
  // 分页器参数,设置了即可显示分页器
  pagination: propTypes.object.def(() => ({})),
  // 点击行时是否显示子表单
  clickRowShowSubForm: propTypes.bool.def(false),
  // 点击行时是否显示主表单
  clickRowShowMainForm: propTypes.bool.def(false),
  // 是否点击选中行,优先级最低
  clickSelectRow: propTypes.bool.def(false),
  // 是否开启 reload 数据效果
  reloadEffect: propTypes.bool.def(false),
  // 校验规则
  editRules: propTypes.object.def(() => ({})),
  // 是否异步删除行,如果你要实现异步删除,那么需要把这个选项开启,
  // 在remove事件里调用confirmRemove方法才会真正删除(除非删除的全是新增的行)
  asyncRemove: propTypes.bool.def(false),
  // 是否一直显示组件,如果为false则只有点击的时候才出现组件
  // 注:该参数不能动态修改;如果行、列字段多的情况下,会根据机器性能造成不同程度的卡顿。
  // TODO 新版vxe-table取消了 visible 参数,导致无法实现该功能
  alwaysEdit: propTypes.bool.def(false),
  // 联动配置,数组,详情配置见文档
  linkageConfig: propTypes.array.def(() => []),
  // 是否开启使用 webSocket 无痕刷新
  socketReload: propTypes.bool.def(false),
  // 相同的socketKey更改时会互相刷新
  socketKey: propTypes.string.def('vxe-default'),
  // 新增行时切换行的激活状态
  addSetActive: propTypes.bool.def(true),
  // 是否开启键盘编辑
  keyboardEdit: propTypes.bool.def(false),
});
 
export const vxeEmits = ['save', 'added', 'removed', 'inserted', 'dragged', 'selectRowChange', 'pageChange', 'valueChange'];