props.js 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. import { defineProps } from '../../libs/util/props';
  2. export default defineProps('tableColumn', {
  3. // 字段名称,对应列内容的字段名,支持嵌套属性如 'user.name'
  4. prop: {
  5. type: String,
  6. default: ''
  7. },
  8. // 列类型:selection/index
  9. type: {
  10. type: String,
  11. default: 'default'
  12. },
  13. // 显示的标题
  14. label: {
  15. type: String,
  16. default: ''
  17. },
  18. // 表头对齐方式:left/center/right
  19. headerAlign: {
  20. type: String,
  21. default: 'left'
  22. },
  23. // 表头超出1行隐藏
  24. headerEllipsis: {
  25. type: Boolean,
  26. default: true
  27. },
  28. // 对应列的宽度,单位为px
  29. width: {
  30. type: [Number, String],
  31. default: null
  32. },
  33. // 对应列的最小宽度,单位为px
  34. minWidth: {
  35. type: [Number, String],
  36. default: null
  37. },
  38. // 是否开启列排序
  39. sortable: {
  40. type: Boolean,
  41. default: false
  42. },
  43. // 列的对齐方式:left/center/right
  44. align: {
  45. type: String,
  46. default: 'left'
  47. },
  48. // 格式化函数
  49. formatter: {
  50. type: [Function, null],
  51. default: null
  52. },
  53. // 是否显示该列
  54. show: {
  55. type: Boolean,
  56. default: true
  57. },
  58. // 自定义类名
  59. className: {
  60. type: String,
  61. default: ''
  62. },
  63. // 自定义样式
  64. customStyle: {
  65. type: Object,
  66. default: () => ({})
  67. }
  68. })