# 预设字段

# 概念

预设字段,即集中配置常用字段的相关属性,以便在配置列表、表单和筛选控件时快捷使用。

假设存在常用字段 custName,如下设置为预设字段:

{
  custName: {
    label: '客户名称',
    field: 'custName',
    column: {},
    input: {
      value: '',
      placeholder: '客户名称'
    },
    filter: {}
  }
}
1
2
3
4
5
6
7
8
9
10
11
12

这时,可如下便捷的将其配置到列表、表单、筛选控件:

// 不使用预设
const columns = [
  {
    label: '客户名称',
    field: 'custName'
    // ...其他属性项
  }
]

// 使用预设
const columns = [
  'custName'
]
1
2
3
4
5
6
7
8
9
10
11
12
13

# 预设方法

预设方法可参考 ./fields 目录的预置预设文件。

/**
 * 一个典型的字段预设配置
 * 必要属性:
 * label: 字段描述
 * field: 字段名称
 * 可选属性:
 * column: 该字段在通用列表的 columns 属性中呈现的预设
 * input: 该字段在通用表单的 fields 属性中呈现的预设
 * filter: 该字段在筛选工具条的 filters 属性中呈现的预设
 * 其中 filter 将继承 input 的预设配置
 * 可选属性中可省略 label、field 配置,以继承父级的 label、field 字段
 */
{
  meterType: {
    label: '表具类型',
    field: 'meterType',
    // column 预设字段,与通用列表字段配置一致
    column: {},
    // input 预设字段,与通用表单字段配置一致
    input: {
      type: 'select',
      value: '',
      options: [
        {
          label: '普表',
          value: 11
        },
        {
          label: '卡表',
          value: 12
        },
        {
          label: '远传表',
          value: 13
        }
      ]
    },
    // filter 预设字段,与筛选工具条字段配置一致,继承 input 预设配置
    filter: {
      multiple: true,
      value: []
    }
  }
}
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

# 获取预设字段

预设字段的应用是自动完成的,如果你想要引用预设字段,可访问如下 Vue 实例原型属性:

  • 列表字段预设:$presetColumns
  • 表单字段预设:$presetFields
  • 筛选字段预设:$presetFilters
export default {
  data () {
    return {}
  },
  created () {
    console.info(this.$presetColumns)
  }
}
1
2
3
4
5
6
7
8
最后更新: 11/18/2021, 11:31:19 AM